Sie sind auf Seite 1von 46

NetoDADOS

NDICE

INTRODUO AO MS-ACCESS:................................................................................................1 RECAPITULAO:............................................................................................................................1 Tabelas:.........................................................................................................................................1 Consultas:.....................................................................................................................................1 Formulrios:.................................................................................................................................1 Relatrios:.....................................................................................................................................1 SEGURANA:.................................................................................................................................2 ANTES DE COMEAR :......................................................................................................................2 PROTEO DOS DADOS.....................................................................................................................2 Exerccio:......................................................................................................................................3 CONSULTAS:..................................................................................................................................4 USANDO SQL NO MS-ACCESS .........................................................................................................4 CONSULTAS UNIO..........................................................................................................................4 CONSULTA DEFINIO DE DADOS......................................................................................................6 Tipos de dados do SQL compatveis com o Access......................................................................6 CONSULTA PASSO ATRAVS..............................................................................................................8 CRIAR SUB-CONSULTAS....................................................................................................................8 DIFERENAS ENTRE CONSULTAS AO E CONSULTAS SELEO...........................8 ALTERANDO DADOS COM CONSULTAS AO..................................................................9 CONSULTA CRIAO DE TABELA: .....................................................................................................9 Exerccio I...................................................................................................................................10 CONSULTA EXCLUSO: ..................................................................................................................10

Exerccio:..............................................................3

Exerccio I...........................................................10 Exerccio II..........................................................10

Exerccio II..................................................................................................................................10 CONSULTA ATUALIZAO: .............................................................................................................10 Exerccio III................................................................................................................................10 CONSULTA ANEXAO: ..................................................................................................................11

Exerccio III........................................................10 Exerccio IV........................................................11

Exerccio IV................................................................................................................................11 ESTRUTURANDO FORMULRIOS.........................................................................................12 CRIANDO CONTROLES ..................................................................................................................12 Controles vinculados, no vinculados e calculados..................................................................12 Definindo propriedades de controle...........................................................................................13 PERSONALIZANDO FORMULRIOS ......................................................................................................14 Alterando ordem de tabulao ..................................................................................................14 Criando outros controles utilizando a caixa de ferramentas....................................................15 Fornecendo uma lista de opes com uma caixa de listagem ou uma caixa de combinao. .16 CRIANDO UM FORMULRIO/SUB -FORMULRIO SEM A AJUDA DO ASSISTENTE.............................................17 Vinculando um formulrio e um sub-formulrio.......................................................................18

Exerccio V..........................................................19
Exerccio V..................................................................................................................................19 CALCULANDO UM TOTAL PARA UM GRUPO DE REGISTROS.......................................................................19

Exerccio VI........................................................20

Apostila do MS-Access Avanado

NetoDADOS

ii

Exerccio VI................................................................................................................................20 ESTRUTURANDO RELATRIOS.............................................................................................21 ADICIONANDO SEES....................................................................................................................21 Cabealho do Relatrio..............................................................................................................21 Cabealho da Pgina..................................................................................................................21 Para adicionar cabealho e rodap a um relatrio ou pgina.................................................21 Cabealho do Grupo...................................................................................................................21 Para adicionar cabealho e rodap a um grupo.......................................................................21 Seo detalhe..............................................................................................................................22 Rodap do grupo.........................................................................................................................22 Rodap da pgina.......................................................................................................................22 Rodap do relatrio....................................................................................................................22

Exerccio VII.......................................................23
Exerccio VII...............................................................................................................................23 USANDO EXPRESSES EM RELATRIOS................................................................................................23 MACROS........................................................................................................................................24 O QUE UMA MACRO ?...................................................................................................................24 PORQUE USAR MACROS ?.................................................................................................................24 Fazer seus formulrios e relatrios trabalhem juntos...............................................................24 Encontrar e filtrar registros automaticamente..........................................................................25 Definir valor em controles..........................................................................................................25 Garantir a preciso dos dados...................................................................................................25 Definir propriedade de formulrios, relatrios e controles......................................................25 Automatizar transferncias de dados.........................................................................................25 Criar o seu prprio ambiente de trabalho personalizado.........................................................25 CRIANDO UMA MACRO...................................................................................................................26 Para criar uma macro................................................................................................................26 A Janela Macro...........................................................................................................................26 Adicionando aes a uma Macro...............................................................................................27 Definindo argumentos.................................................................................................................28 Salvando uma Macro..................................................................................................................28 Criando um grupo de macro.......................................................................................................29 Usando condies em macros.....................................................................................................30 LISTA DE AES DE MACRO............................................................................................................32 RESPONDENDO A EVENTOS EM FORMULRIOS.......................................................................................34 Fazendo Formulrios trabalharem em conjunto.......................................................................34 Atribuindo macros de validao a eventos de formulrio e de controle .................................35 Exibindo mensagens de validao diferentes para condies diferentes.................................36 CRIANDO NOSSOS PRPRIOS MENUS...................................................................................................38 Definio do Menu......................................................................................................................38 Definio da Barra de Menu......................................................................................................39 Atribuindo uma Barra de Menu a um formulrio......................................................................39 MDULOS.....................................................................................................................................40 ESTRUTURA DO MDULO................................................................................................................40 DECLARANDO VARIVEIS................................................................................................................40 Tipos de Dados............................................................................................................................41 USANDO DADOS CONTIDOS NOS FORMULRIOS.....................................................................................42 OBJETOS DE BANCO DE DADOS........................................................................................................43 VALIDAO DE CAMPOS COM MDULOS.............................................................................................44

Apostila do MS-Access Avanado

NetoDADOS
Introduo ao MS-Access:
Recapitulao:
Tabelas:

Uma coleo de dados de mesmo assunto ou tpico, uma tabela armazena os dados em Registros (linhas) e Campos (colunas)

Consultas:

Objeto que seleciona registros e campos armazenados nas tabelas. Voc pode pensar numa consulta como uma pesquisa num conjunto particular de dados.

Formulrios:

Objeto no qual voc coloca controles para a entrada, exibio e edio de dados nos campos.

Relatrios:

Objeto que apresenta os dados formatados e organizados segundo as especificaes do usurio.

Apostila do MS-Access Avanado

NetoDADOS
Segurana:
Antes de comear :

Deve-se criar uma cpia de reserva do banco de dados do grupo de trabalho, SYSTEM.MDA, onde o Microsoft Access armazena as especificaes das opes de cada usurio e as configuraes da barra de ferramentas. Em um ambiente de multiusurio, o banco de dados do grupo de trabalho tambm contm as informaes de cadastro de segurana do seu grupo. Se o seu arquivo SYSTEM.MDA for perdido ou danificado, voc no poder iniciar o Microsoft Access. Uma vez feita uma cpia de reserva desse arquivo, s ser preciso copi-lo novamente caso haja mudanas nas opes, barra de ferramentas ou nas informaes da cadastro de segurana.

Proteo dos dados


Proteger uma informao pode ser uma parte importante no desenvolvimento de um banco de dados do Microsoft Access. Atravs da proteo ao seu banco de dados, voc poder controlar o que um usurio ou um grupo de usurios pode fazer com objetos do banco de dados. A segurana do Microsoft Access composta de vrias partes que precisam estar no lugar antes que a segurana se conclua: grupos de trabalho, usurio e contas do grupo, posse, e atribuies de permisso. 1 2 3 4 5 6 Para proteger um banco de dados: Atribuir senha ao usurio Administrador; sair do Access e Logar como Administrador Definir grupos de usurios Definir permisses do grupo Criar usurios Tirar as permisses dos grupos Usurios e Administradores Colocar os usurios que vo administrar o banco de dados no grupo Administradores

Importante: Voc precisa remover as permisses do usurio administrador e do grupo de usurios, que inclui todos os usurios em um grupo de trabalho. At que voc remova estas permisses, os usurios podero ter permisses involuntrias para objetos. Tendo, uma vez, as permisses removidas, os usurios passaro a ter somente as que voc atribuiu. Para assegurar a proteo do banco de dados, importante acrescentar uma senha conta do administrador e s contas do proprietrio e administrador designadas. Adicionalmente, voc poder acrescentar uma senha s contas criadas para usurios ou instru-los para acrescentar s suas prprias senhas.

Apostila do MS-Access Avanado

NetoDADOS

Observaes: A segurana depende da relao entre contas do grupo de trabalho do Microsoft Access e das atribuies de permisso em seu banco de dados. O Microsoft Access armazena informao de conta com o grupo de trabalho e atribuies de permisses no arquivo (.MDB) do banco de dados.

Exerccio:
Implemente a segurana no banco de dados do curso, criando trs grupos: DBA - administrador (Todas as permisses) Gerentes - usurio (somente para leitura) Digitadores - usurio (com permisses para leitura, gravao, excluso e atualizao)

Apostila do MS-Access Avanado

NetoDADOS
Consultas:
Usando SQL no MS-Access

A Structured Query Language SQL uma linguagem muito usada na consulta, atualizao e gerenciamento de banco de dados relacionais. Cada consulta criada no MSAccess tem uma instruo SQL associada que define as aes daquela consulta. Normalmente mais conveniente usar a grade QBE e as ferramentas grficas de estruturao de consulta do Access para criar e modificar consultas. Mas se voc est familiarizado com SQL, pode usar instrues SQL para:

Consultas Unio
uma consulta especfica SQL que cria um resultado contendo dados de todos os registros especificados em duas ou mais tabelas. Pelo contrrio, uma consulta baseada em uma associao cria um dynaset contendo dados somente de registros cujos campos relacionados encontram uma condio especificada. Por exemplo, uma consulta unio da tabela clientes e data da tabela fornecedores resulta um Resultado que contm todos os registros especificados em ambas as tabelas, a de clientes e a de fornecedores. A consulta unio a seguir, consiste de duas instrues SELECT que retornam os nomes de empresa e cidades que estejam tanto na tabela Fornecedores como na tabela Clientes, e sejam do Brasil. A seguinte consulta unio consiste de duas instrues SQL SELECT que retornam os nomes de companhias e cidades que esto nas tabelas Fornecedores e Clientes e so do Brasil. SELECT [Nome da empresa], [Cidade] FROM [Fornecedores] WHERE Pais="Brasil" UNION SELECT [Nome da empresa], [Cidade] FROM [Clientes] WHERE Pais="Brasil";

Apostila do MS-Access Avanado

NetoDADOS

A seguinte consulta unio seleciona o nome de todas as empresas e cidades que estejam nas tabelas Fornecedores e Clientes e classifica alfabeticamente os dados por cidade. SELECT [Nome da empresa], [Cidade] FROM [Fornecedores] UNION SELECT [Nome da empresa], [Cidade] FROM [Clientes] ORDER BY [Fornecedores], [Cidade]; A consulta unio a seguir renomeia o campo "Nome da empresa" para "Nome do cliente/fornecedor" na sada da consulta; SELECT [Nome da empresa] AS [Nome do cliente/fornecedor], [Cidade] FROM [Fornecedores] UNION SELECT [Nome da empresa] AS [Nome do cliente/fornecedor], [Cidade] FROM [Clientes]; A consulta unio a seguir utiliza a instruo UNION ALL registros duplicados: SELECT [Nome da empresa], [Cidade] FROM [Fornecedores] UNION ALL SELECT [Nome da empresa], [Cidade] FROM [Clientes]; para recuperar

Apostila do MS-Access Avanado

NetoDADOS
Consulta Definio de Dados

Este tipo de consulta cria uma tabela sem adicionar nenhum registro a ela, interessante quando precisamos criar tabelas temporrias. Veja o exemplo: CREATE TABLE [SCIOS] (Cdigo COUNTER, Nome TEXT (50), Rua TEXT (50), (CONSTRAINT CdigoDoScio PRIMARY KEY ([Cdigo])); No exemplo acima criada uma tabela Scios com os seguintes campos: Campo Cdigo Nome Rua Tipo Contador Texto Texto Tamanho 4 bytes 50 50

A palavra chave CONSTRAINT indica que em seguida vem o nome de um ndice chamado CdigoDoScio, entre parntesis vem o nome do campo que faz parte deste ndice e opcionalmente a clausula PRIMARY KEY para indicar a chave primria da tabela.

Tipos de dados do SQL compatveis com o Access


Tipo de dado BINARY Tamanho 1 byte Descrio Para consultas em tabelas anexadas em produtos de banco de dados que definem um tipo de dados Binrio. O Microsoft Access no usa o tipo de dados Binrio. Valores Sim e No e campos que contm apenas um entre dois valores. Um valor inteiro entre 0 e 255. Um nmero incrementado automaticamente pelo Microsoft Access quando um novo registro adicionado a uma tabela. No Jet database engine, o tipo de dado para este valor Long. Um inteiro dimensionado entre -922.337.203.685.477,5808 e 922.337.203.685.477,5807.

BIT BYTE COUNTER

1 byte 1 byte 4 bytes

CURRENCY

8 bytes

Apostila do MS-Access Avanado

NetoDADOS
Tipo de dado DATETIME(Consulte DOUBLE) SINGLE Tamanho 8 bytes 4 bytes

7 Descrio Um valor data ou hora entre os anos 100 e 9999.

DOUBLE

SHORT LONG LONGTEXT LONGBINARY TEXT

Um valor ponto flutuante de preciso simples com um intervalo de -3,402823E38 a -1,401298E-45 para valores negativos, 1,401298E-45 a 3,402823E38 para valores positivos e 0. 8 bytes Um valor ponto flutuante de preciso dupla com um intervalo de -1,79769313486232E308 a -4,94065645841247E-324 para valores negativos, 4,94065645841247E-324 a 1,79769313486232E308 para valores positivos e 0. 2 bytes Um inteiro curto entre -32.768 e 32.767 4 bytes Um inteiro longo entre -2.147.483.648 e 2.147.483.647. 1 byte por Zero at um mximo de 1,2 gigabytes. (Consulte caracter Text.) Como Zero a um mximo de aproximadamente 1 definido gigabyte. Usado para objetos OLE. 1 byte por Zero a 255 caracteres. caracter

Exerccio Criar uma consulta Definio de Dados para criar uma tabela com a seguinte estrutura: Nome do Campo Tipo do dado Tamanho Cdigo do Produto Contador Nome do Produto Texto 40 Quantidade Por Unidade Texto 20 Preo Unitrio Moeda Unidades em Estoque Nmero Inteiro Categoria Texto 15 Fornecedor Texto 40 O nome da tabela a ser criada ser Informaes dos produtos. Como chave primria ser utilizado o campo Cdigo do Produto.

Apostila do MS-Access Avanado

NetoDADOS
Consulta Passo Atravs

As consultas passo atravs no so executadas pelo Access, elas so executas pelo servidor SQL, por isso no possvel usar o SQL do Access, visto que ele no segue o padro ANSI como os servidores SQL. Esta consulta manipula os dados diretamente no servidor ento as tabelas utilizadas no precisam estar anexadas.

Criar sub-consultas
para criar uma sub-consulta, voc usa a grade QBE, mas insere uma instruo SQL SELECT como critrio. Para maiores informaes consulte Criando uma Sub-consulta dentro de SQL: sub-consultas na ajuda do MS-Access.

Diferenas entre consultas Ao e consultas seleo


Quando se cria uma consulta, o MS-Access cria uma consulta seleo, a no ser que se escolha um tipo diferente no menu consulta. Quando uma consulta seleo executada, o MS-Access exibe o Dynaset, os registros recuperados de suas tabelas. Pode-se, ento, visualizar o dynaset e fazer alteraes em seus dados. Entretanto, ao fazer alteraes, elas so inseridas registro a registro. Caso haja um grande nmero de alteraes similares, voc pode poupar tempo usando uma consulta ao. Uma consulta ao faz quaisquer alteraes em apenas uma operao. Por exemplo, caso deseje excluir todos os produtos que tenham sido descontinuados, voc pode executar uma consulta ao que remova todos esses produtos. Para se garantir que alteraes indesejadas no sejam feitas se voc executar inadvertidamente uma consulta ao, o MS-Access exibe na janela Banco de dados, um cone especial para identificar as quatro consultas ao. Consulta Anexao Consulta Atualizao Consulta Criao de Tabela Consulta Excluso

Apostila do MS-Access Avanado

NetoDADOS
Alterando dados com consultas Ao
Consultas Ao:

Com as consultas ao, voc pode criar novas tabelas ou alterar os dados de tabelas j existentes. Todas as Consultas Ao so feitas com base numa consulta seleo, ento para se criar qualquer tipo de consulta ao, devemos criar as consultas seleo que nos traro os dados que desejamos manipular pelas consultas ao, podendo assim atualizar, excluir, exportar e anexar dados. O MS-Access proporciona quatro tipos de consultas ao.

Consulta criao de tabela:


Cria uma nova tabela a partir de outra ou parte de outra tabela com um novo nome definido pelo usurio e adicionando os registros especificados pelo critrio.

Consulta excluso:
Exclui os registros de uma ou mais tabelas que atendem a um critrio.

Consulta anexao:
Adiciona uma grupo de registros de uma ou mais Tabelas para outra ou mais tabelas.

Consulta atualizao:
Altera ou dados em um grupo de registros de uma ou mais tabelas.

Consulta Criao de Tabela:


1. Aps criarmos a consulta seleo com os campos desejados, clique no boto da consulta criao de tabela , em seguida fornea o nome da tabela a ser criada. Se for necessrio, voc pode criar esta tabela em outro banco de dados, clicando no boto outro banco de dados e fornea o seu nome. Depois pressione o boto Ok. 2. Quando voc clicar no boto Executar, o MS-Access informa quantas linhas ( registros ) sero includos na nova tabela, nesta mensagem, voc pode confirmar a criao ou cancelar a incluso. 3. Se voc clicar no boto Modo Folha de Dados, a consulta seleo ser executada e voc ver os registros que vo para a nova tabela.

Apostila do MS-Access Avanado

NetoDADOS
Exerccio I

10

Crie uma consulta de Criao de tabela para listar o Nome do produto, Quantidade em estoque e o Fornecedor , Cdigo do Fornecedor, onde a quantidade em estoque seja menor que 20. O nome da tabela de sada ser Produtos em Baixa. Salve a consulta como Cria Produtos em Baixa.

Consulta excluso:
1. Quando desejamos excluir vrios dados de uma tabela com dados alguns dados em comum, ns devemos criar uma consulta seleo para exibir estes registros e depois transformar numa consulta excluso. 2. Quando voc clicar no boto Executar, o MS-Access informa quantas linhas ( registros ) sero excludas da tabela, nesta mensagem, voc pode confirmar a eliminao ou no. 3. Se voc clicar no boto Modo Folha de Dados, a consulta seleo ser executada e voc ver os registros que vo excludos.

Exerccio II
Crie uma consulta para excluir todos da tabela de produtos, todos os produtos que estejam com a quantidade em estoque abaixo de 20. Salve com o nome de Exclui Produtos em Baixa.

Consulta Atualizao:
1. A consulta atualizao atualiza os dados de um ou mais campos, cria-se a consulta seleo com os campos desejado e depois pressione o boto da consulta atualizao e na linha atualizar para voc coloca o valor ou expresso que ir atualizar o campo.

Exerccio III
Crie uma consulta para atualizar o campo Unidades em estoque em 50% se o valor for diferente de 0 (zero) ou 50 se for igual a 0 (zero). Salve com o nome Atualiza Produtos.

Apostila do MS-Access Avanado

NetoDADOS
Consulta anexao:

11

1. A consulta anexao nos permite anexar dados de uma tabela a outra. Para isso devemos criar uma consulta seleo com os campos que desejamos anexar, e depois clicamos no boto da consulta anexao e est pronta a consulta anexao. 2. Quando voc clicar no boto Executar, o MS-Access informa quantas linhas ( registros ) sero anexadas da tabela, nesta mensagem, voc pode confirmar a anexao ou no. 3. Se voc clicar no boto Modo Folha de Dados, a consulta seleo ser executada e voc ver os registros que vo ser anexados.

Exerccio IV
Criar uma consulta para Anexar os campos para a tabela Informaes do produto.

Apostila do MS-Access Avanado

NetoDADOS
Estruturando formulrios
Criando Controles

12

Quando comea um formulrio em branco, voc mesmo adiciona todos os controles. Se criou um formulrio com o assistente de formulrio, pode-se tambm desejar adicionar controles para exibir dados adicionais ou para tornar o formulrio mais atraente ou mais fcil de usar. Por exemplo, voc pode desejar adicionar uma etiqueta que inclua instrues sobre como utilizar um formulrio no modo formulrio.

Controles vinculados, no vinculados e calculados


Quando se adiciona um controle a um formulrio, determina-se de onde ele obtm a informao que exibe. Por exemplo, voc pode adicionar um controle caixa de texto que exibe um produto da companhia a partir do campo NomeDoProduto da tabela produtos. A caixa de texto obtm os valores a partir do campo Nome do Produto por ter sido conectado ou vinculado quele campo. Os controles tambm podem exibir informaes que no estejam armazenadas no banco de dados, tais como instrues, legendas e valores calculados. Conhecer a origem dos dados de um controle ajuda a decidir que tipo de controle usar e como cria-lo. Os controles podem ser vinculados, no vinculados e calculados. A ilustrao seguinte mostra os trs tipos de controle.

Apostila do MS-Access Avanado

NetoDADOS

13

Se voc comparar um formulrio no modo estrutura e no modo folha de dados, poder ver a conexo entre os controles do formulrio e os campos da tabela de origem do formulrio.

Definindo propriedades de controle


No MS-Access, as propriedades so usadas para determinar as caractersticas das tabelas, consultas, campos, formulrios e relatrios. Cada controle de um formulrio tem tambm propriedades. As propriedades de controle determinam a estrutura e a aparncia de um controle bem como as caractersticas do texto ou dos dados que ele contm. Por exemplo, voc pode definir propriedades que formatem os valores de um controle como moeda e os exiba em negrito. Pode-se ver as propriedades de um controle exibindo sua folha de propriedade. Para exibir a folha de propriedade de um controle Clique duas vezes no controle (esse mtodo funciona com todos os tipos de controle exceto sub-formulrios, sub-relatrios e objetos OLE no vinculados). -OuSelecione o controle e escolha Propriedades no menu Exibir ou clique no boto Propriedades na barra de ferramentas. Se o controle tem uma etiqueta anexada, selecione o controle e no sua etiqueta (para exibir a folha de propriedades de uma etiqueta, selecione a etiqueta).

Aqui teremos algumas propriedades, comuns para vrios Objetos, essas propriedades podem ser definidas nos controles tanto para formulrio quanto para relatrio, visto que cada controle tem em mdia 20 a 30 propriedades teremos aqui somente algumas que so comuns a vrios controles, como por exemplo.

Apostila do MS-Access Avanado

NetoDADOS
Propriedade Origem do Controle

14

Descrio Nome de Campo ou Expresso para usar como fonte de dados para Controle Tabular Automaticamente Pode gerar ou no uma tabulao quando o ltimo caracter permitido em uma mscara de entrada de uma caixa de texto inserido. Comportamento da Tecla Enter Padro troca de campo e Nova Linha no campo, cria uma linha em branco no mesmo campo para insero. Visvel Torna o objeto visvel Ativado Habilitar controle no modo formulrio Parada de Tabulao Permite tabulaes no controle ndice de Tabulao Definir ordem de tabulao Pode Ampliar Controle ou seo expande automaticamente para caber no texto., Pode Reduzir Determina se o tamanho de uma sesso ou controle ser Reduzido verticalmente para acomodar a quantidade de dados. Ao Entrar Macro ou funo executada quando o controle recebe o primeiro foco Ao Sair Macro ou funo executada quando o controle perde o foco no mesmo formulrio. Para obter mais informaes consulte Definindo Propriedades no Help do MS-Access.

Personalizando formulrios
Voc pode ser mais produtivo com formulrios personalizados que se adaptem s suas necessidades particulares. Por exemplo, voc pode personalizar que apresente listas de opes para sua escolha, adicionar um boto que torne fcil a abertura de um formulrio relacionado e usar imagens em vez de texto em botes.

Alterando ordem de tabulao


Quando adiciona controles a um formulrio, o MS-Access atribui automaticamente uma ordem de tabulao aos controles. Quando a tecla Tab pressionada no modo formulrio o foco se move de controle para controle de acordo com a ordem de tabulao. O MS-Access coloca automaticamente no final da ordem de tabulao no final de cada novo controle adicionado. Em alguns casos essa pode no ser a ordem de tabulao desejada. Por exemplo, voc pode reorganizar alguns controles em um formulrio depois de coloc-los. Nesse caso, voc provavelmente desejar alterar a ordem de tabulao para adequ-la nova disposio. Para fazer isso, use o comando Ordem de Tabulao no modo Estrutura.

Apostila do MS-Access Avanado

NetoDADOS

15

O comando Ordem de Tabulao exibe apenas os nomes dos controles que voc pode selecionar ou para os quais pode-se tabular no modo formulrio. Os nomes dos controles que no podem ser selecionados, como etiquetas ou linhas, no so includos. Os nomes so exibidos na ordem tabulada atravs dos controles. Voc pode fazer com que o MS-Access crie automaticamente uma ordem de tabulao que percorra os controles da esquerda para a direita e de cima para baixo ou mesmo criar um ordem de tabulao personalizada. Para criar uma ordem de tabulao da Esquerda para a Direita e de Cima para Baixo 1. Com o formulrio aberto no modo estrutura, escolha Ordem de Tabulao no menu Editar. 2. Escolha o boto Ordem Automtica.

Criando outros controles utilizando a caixa de ferramentas


Se voc deseja criar controles no vinculados ou calculados, use a barra de ferramentas. Tambm pode usar a caixa de ferramentas para criar controles vinculados que no sejam caixas de textos. A caixa de ferramentas uma barra de ferramentas especializada: voc pode escolher Barras de Ferramentas no menu Exibir, para ativar ou desativar a caixa de ferramentas. O MS-Access exibe automaticamente a caixa de ferramentas quando voc abre um formulrio no modo estrutura, se as barras de ferramentas estiverem ativadas.

Apostila do MS-Access Avanado

NetoDADOS

16

A caixa de ferramentas tem ferramentas para todos os tipos de controles que voc pode criar na estrutura de um formulrio. Move-se a caixa de ferramentas selecionando e arrastando a mesma, e pode fechla clicando na caixa controle no canto superior esquerdo.

Para exibir ou fechar a caixa de ferramentas No menu exibir, escolha caixa de ferramentas (ou clique no boto caixa de ferramentas na barra de ferramentas). Para determinar a finalidade de uma ferramenta Posicione o ponteiro do mouse sobre a ferramenta O MS-Access exibe o nome da ferramenta.

Fornecendo uma lista de opes com uma caixa de listagem ou uma caixa de combinao
Uma caixa de listagem uma lista simples de valores para voc selecionar. Uma caixa de combinao como uma caixa de texto e uma caixa de listagem combinadas em um controle, voc tanto pode digitar um valor na caixa de texto como selecionar um valor na lista. Vantagens da caixa de listagem A lista aparece todas as vezes e o valor do controle fica limitado a o conjunto de alternativas da lista. Para mover rapidamente para o primeiro iniciado com uma determinada letra voc pode digitar essa letra. Quando se est usando um formulrio para inserir ou editar, no se pode adicionar um valor que no esteja na lista. Vantagens de uma caixa de combinao

Apostila do MS-Access Avanado

NetoDADOS

17

Uma vez que a lista no exibida at que se abra, o controle ocupa menos espao no formulrio. Voc pode digitar os primeiros caracteres de um valor na caixa de combinao para rapidamente encontrar esse valor. Alm disso, pode-se optar por permitir a entrada de valores novos na caixa de combinao ou impedir a entrada de valores novos.

Criando um Formulrio/sub-formulrio sem a ajuda do Assistente


Quando est criando um formulrio e um sub-formulrio sem a ajuda do assistente de Formulrio/Sub-formulrio, inicialmente voc cria o formulrio e o subformulrio separadamente. Em seguida, insere o sub-formulrio no formulrio. Este mtodo til se voc j criou um formulrio e deseja inseri-lo em diversos outros formulrios. Pode, tambm, preferir criar o seu prprio sub-formulrio quando quiser criar um sub-formulrio que seja diferente do formulrio que o Assistente projetou. Criando um formulrio e um sub-formulrio Um sub-formulrio um formulrio separado, que voc cria e salva da mesma forma que qualquer outro formulrio. Ento, adiciona-o ao formulrio de modo a se assegurar o seu vnculo ao formulrio. Na maioria dos casos, o MS-Access vincula o formulrio automaticamente quando voc o adiciona. Existe, porm, situaes onde voc tem que definir as propriedades para vincular o formulrio ao sub-formulrio. Preparando o formulrio 1. Crie o formulrio. Deixe espao no formulrio para o sub-formulrio. 2. Salve e feche o formulrio. Preparando o sub-formulrio 1. Crie um formulrio e defina as propriedades de formulrio VisualizaoAutorizada e ModoPadro Apenas folha de dados: Coloque os campos no formulrio na ordem que voc deseja que eles apaream na folha de dados. Voc no precisa organizar os campos, j que eles sempre aparecem como uma folha de dados. Defina as propriedades VisualizaoAutorizada e ModoPadro como folha de dados. Apenas formulrio: Coloque os controles como voc deseja que apaream no modo formulrio. Defina a propriedade VisualizaoAutorizada como Formulrio. Defina a propriedade ModoPadro como formulrio simples ou formulrios contnuos.

Apostila do MS-Access Avanado

NetoDADOS

18

Formulrios e folha de dados: Coloque os controles como voc deseja que eles apaream no modo formulrio. Defina a propriedade VisualizaoAutorizada para ambos. Defina a propriedade Modo Padro para formulrios Simples, formulrios contnuos ou folha de dados. Dependendo de como voc deseja que o sub-formulrio seja visualizado quando voc abre o formulrio. 2. Salve e feche o sub-formulrio. Para adicionar um sub-formulrio a um formulrio 1. Abra o formulrio no modo estrutura. 2. Alterne para a janela de Banco de Dados (Pressione F11). 3. Arraste o sub-formulrio que quiser da janela Banco de Dados e coloque-o onde voc o deseja no formulrio. O MS-Access adiciona o controle do sub-formulrio a suas etiquetas anexadas ao formulrio. O controle do sub-formulrio est vinculado ao sub-formulrio e aproximadamente do mesmo tamanho do sub-formulrio (o controle do subformulrio inclui espao para os seletores de registros, de forma que se torna maior). 4. Mova o controle do sub-formulrio e, se necessrio, ajuste o seu tamanho. 5. Alterne para o modo formulrio para ver o formulrio com seu sub-formulrio. 6. Para fazer alteraes no formulrio, alterne para o modo Estrutura. Para fazer alteraes no sub-formulrio, consulte o seguinte procedimento. 1. No modo estrutura, clique em qualquer lugar do formulrio fora do controle do sub-formulrio (para ter certeza de que o controle do sub-formulrio no est selecionado). 2. Clique duas vezes em qualquer dentro do sub-formulrio. (O MS-Access exibe o sub-formulrio no modo estrutura). 3. Faa as alteraes na estrutura do sub-formulrio. 4. Salve e feche o sub-formulrio no modo estrutura ou no modo folha de dados. 5. Clique no boto Modo do Formulrio na barra de ferramentas.

Vinculando um formulrio e um sub-formulrio


1. No formulrio no modo Estrutura, abra a folha de propriedades para o controle do sub-formulrio.

Apostila do MS-Access Avanado

NetoDADOS

19

2. Defina a propriedade VincularAPartirDe como o nome do campo vinculado no sub-formulrio. Para entrar diversos campos vinculados, separe os nomes dos campos com ponto e vrgula. 3. Defina a propriedade VincularA como o nome do controle ou campo vinculado no formulrio. Para entrar diversos controles ou campos vinculados, separe os nomes de campo ou controle por ponto e vrgula. 4. Salve e feche o sub-formulrio. 5. Clique no boto Modo do Formulrio na barra de ferramentas.

Exerccio V
1. Crie um Formulrio para mostrar os pedidos feitos por um cliente. 2. Crie um Formulrio para mostrar as informaes do cliente 3. Crie um Formulrio Principal/SubFormulrio colocando no Principal as informaes do cliente e no subFormulrio os pedidos feitos por cada cliente

Calculando um total para um grupo de registros


Use a funo Soma para calcular o total de um grupo de registros. As sintaxe para a funo Soma : Soma(expr) O argumento expr o nome de um campo ou de uma expresso. possvel usar nomes de campo no argumento expr da funo Soma, mas no nomes de controles. Os nomes de campo podem vir de uma tabela ou de uma consulta. Pode-se at usar o nome de um campo calculado a partir de uma consulta. Entretanto, para saber o total dos valores em um controle calculado, necessrio repetir a expresso usada no controle calculado na funo Soma.

Apostila do MS-Access Avanado

NetoDADOS

20

Exerccio VI
Crie um formulrio tabular para mostrar todas os itens de um pedido e seus respectivos preos . No rodap do formulrio crie um campo somando todas os preos dos produtos.

Apostila do MS-Access Avanado

NetoDADOS
Estruturando relatrios
Adicionando sees

21

Voc pode aumentar a eficincia de um relatrio adicionando sees, que so elementos prprios da estrutura do relatrio. O MS-Access possui sete tipos de sees, que pode ser usado em qualquer combinaes. Por exemplo, se voc deseja imprimir informaes introdutrias a um relatrio, voc adicionar um cabealho que imprima apenas na primeira pgina do relatrio. No modo estrutura, voc v a estrutura do relatrio como sees e controles. O modo estrutura apresenta o modelo para o relatrio, cada seo do relatrio representada uma vez, ainda que, no relatrio impresso, algumas sees podem repetir algumas vezes. Por exemplo, quando voc imprime um relatrio, o cabealho do grupo e o rodap do grupo se repetem para cada grupo, enquanto a seo detalhe se repete para cada registro.

Cabealho do Relatrio
Aparece uma nica vez no incio do relatrio. Voc pode us-lo para itens tais como logotipo. O cabealho do relatrio impresso antes do cabealho da pgina somente na primeira pgina do relatrio.

Cabealho da Pgina

Aparece na parte superior de todas as pginas do relatrio. usado para exibir itens tais como legendas de colunas em relatrio tabular.

Para adicionar cabealho e rodap a um relatrio ou pgina


No menu formatar, escolha cabealho/rodap do relatrio

Cabealho do Grupo
Aparece no incio de um novo grupo de registros. usado para exibir itens, tais como o nome do grupo.

Para adicionar cabealho e rodap a um grupo


A ordem de classificao de um relatrio definida na caixa de dilogo Classificar e Reagrupar. Para exibir a caixa de dilogo Classificar e Reagrupar 1. Abre um relatrio no modo estrutura 2. No menu exibir escolha classificar e reagrupar ou clique no boto Classificar e Reagrupar na barra de ferramentas. 3. Na coluna campo/expresso seleciona o campo que voc deseja ou digite uma expresso. (Tenha certeza de iniciar uma expresso com sinal de igual.)

Apostila do MS-Access Avanado

NetoDADOS
Seo detalhe

22

Contm o corpo principal dos dados de um relatrio. Os controles desta seo repetem-se para cada registro retirado do banco de dados.

Rodap do grupo
Aparece no final de um grupo de registro. usado para exibir itens, tais como os totais de grupo.

Rodap da pgina
Aparece na parte inferior de todas as pginas do relatrio. usado para exibir itens tais como a numerao de pginas.

Rodap do relatrio
Aparece uma vez no final do relatrio. usado para exibir itens tais como totais de relatrio. a ltima seo na criao do relatrio, mas aparece antes do rodap da pgina na ltima pgina do rodap impresso.

Apostila do MS-Access Avanado

NetoDADOS
Exerccio VII
Crie um relatrio para mostrar uma sada como o padro abaixo:

23

Usando expresses em relatrios


Voc usa expresses para obter informaes que no consegue obter diretamente das tabelas de um banco de dados. Por exemplo, uma expresso pode ser utilizada para saber quantas unidades de um produto voc vendeu em um ms ou o nmero mdio de unidades que vende todo ms. Um controle que tenha expresso igual a de sua origem de controle um controle calculado. Se o controle uma caixa de texto, voc pode inserir a expresso diretamente na caixa de texto. De qualquer modo, pode sempre digitar a expresso diretamente na folha de propriedades ou pode definir a propriedade origem do controle com o construtor de expresses. .

Apostila do MS-Access Avanado

NetoDADOS
Macros

24

Usando macros, voc fazer seus formulrios, relatrios e outros objetos de banco de dados trabalharem juntos mais eficientemente. As macros podem automatizar tarefas rotineiras ou repetitivas tais como imprimir relatrios semanais. As macros tambm oferecem capacidade de personalizao, tais como validao de dados complexas para formulrios. Voc pode at usar macros para criar suas prprias barras de menu personalizadas para seus formulrios.

O que uma macro?


Uma macro executa automaticamente uma tarefa ou um srie de tarefas. Cada tarefa que deseja que o MS-Access execute chamada uma ao. O MS-Access proporciona uma lista de aes dentre as quais seleciona-se para criar uma macro. Quando voc executa a macro, o MS-Access executa as aes na seqncia em que elas esto listadas, usando os objetos ou dados que tiver especificado. Por exemplo, voc pode criar uma macro para abrir automaticamente uma tabela e um formulrio usados juntos freqentemente. Esta macro usa duas aes para dizer ao MS-Access para abrir a tabela e, ento, abrir o formulrio. Quando se adiciona ou altera dados no formulrio, pode-se usar uma outra macro para verificar os dados e exibir uma mensagem ou para abrir um outro formulrio.

Porque usar macros?


Qualquer tarefa repetitiva ou rotineira efetuada no MS-Access uma boa candidata a um macro. A automatizao de tarefas rotineiras traz eficincia e preciso para seu banco de dados, porque uma macro executa a tarefa sempre do mesmo modo. Usando macros, possvel:

Fazer seus formulrios e relatrios trabalhem juntos

Muitas vezes, ser interessante usar dois formulrio ao mesmo tempo para procurar dados relacionados. Por exemplo, voc poder usar um formulrio para visualizar informaes sobre seus Fornecedores e um outro para visualizar informaes sobre seus produtos. Usando macros, voc poder adicionar um boto de comando ao formulrio Fornecedores de modo a abrir automaticamente o formulrio Produto e, assim, apresentar apenas os produtos daquele fornecedor. Poder, tambm, adicionar um boto a um formulrio para imprimir um relatrio como, por exemplo, para imprimir uma fatura e uma etiqueta de endereamento de um formulrio usado para registrar novos pedidos.

Apostila do MS-Access Avanado

NetoDADOS
Encontrar e filtrar registros automaticamente

25

As macros podem acelerar o processo para encontrar os registros que deseja ver. Por exemplo, voc pode anexar macros a botes em um formulrio de empregados para poder automaticamente filtrar registros em subconjuntos; por exemplo, todos os empregados localizados em Toronto ou todos os representantes de vendas que trabalham para voc.

Definir valor em controles

Usando macros, voc pode definir o valor de um controle em um formulrio como o resultado de um clculo ou como um valor de uma outra tabela. Por exemplo, quando voc adiciona um produto a um formulrio de pedidos, voc pode usar uma macro para procurar automaticamente o preo unitrio atual do produto e inserir o valor em um controle do formulrio.

Garantir a preciso dos dados


As macros so ideais para validao e tratamento de dados em formulrio. Por exemplo, voc pode usar uma macro para responder a diferentes tipos de dados em um campo com diferentes mensagens. Suponha que voc tenha clientes localizados em diversos pases. Voc pode usar uma macro para certificar-se de que o cdigo postal inserido no registro de um novo cliente seja apropriado para o pas onde vive o cliente.

Definir propriedade de formulrios, relatrios e controles.

Voc pode usar macros para definir a maioria das propriedades de formulrios, relatrios e controles. Por exemplo, voc pode usar uma macro para ocultar um formulrio quando voc no preciso v-lo na tela, mas ainda precisa usar os dados do formulrio.

Automatizar transferncias de dados

Voc pode usar uma macro para importar e exportar dados automaticamente entre diferentes formatos de arquivo. Se voc exporta dados de vendas no final de cada semana para uma planilha MS-Excel. Por exemplo, voc pode automatizar a tarefa em uma macro e fazer isso com o clique de um boto.

Criar o seu prprio ambiente de trabalho personalizado

Voc pode usar uma macro para abrir automaticamente um grupo de consultas, formulrios e relatrios quando voc abre um banco de dados. Usando macros, voc pode combinar partes individuais de um banco de dados em um aplicativo de banco de dados interativo; um programa que execute uma tarefa ou um conjunto de tarefas especficas tais como encontrar informaes de vendas ou de faturas.

Apostila do MS-Access Avanado

NetoDADOS
Criando uma Macro
Para criar uma macro

26

1. Na janela banco de dados, clique no boto macro (ou escolha macros no menu exibir) 2. Escolha o boto novo na janela banco de dados (ou escolha novo no menu arquivo e ento escolha Macros)

A Janela Macro
Voc usa a parte superior da janela macro para adicionar aes. Voc pode incluir um comentrio para explicar as razes por trs de cada ao (O MS-Access ignora comentrios quando executa uma macro). Voc usa a parte inferior da janela macro para especificar argumentos para uma ao. Os argumentos do ao MS-Access informaes adicionais sobre como executar uma ao, tal como qual objeto ou dados utilizar.

Apostila do MS-Access Avanado

NetoDADOS
Adicionando aes a uma Macro

27

Existem duas maneiras de adicionar aes a uma macro. Voc pode selecionar aes a partir da lista de aes da janela Macro ou, para aes comuns associadas a objetos de seu banco de dados, voc pode arrastar o objeto da janela Banco de Dados para a clula ao na janela Macro. Esse mtodo arrastar-e-soltar adiciona a ao e argumentos apropriados. Para adicionar uma ao a uma macro 1. Na janela Macro, clique na primeira clula vazia da coluna Ao. 2. Selecione a ao desejada a partir da lista de aes (clique na seta para ver esta lista) ou digite a ao diretamente na clula. Por exemplo: para que o computador execute um aviso sonoro, quando voc executar uma macro, adicione a ao AvisoSonoro macro.

3. Insira um comentrio (opcional)sobre a ao. 4. Especifique os argumentos da ao, se eles forem necessrios.

Apostila do MS-Access Avanado

NetoDADOS

28

Para adicionar uma ao arrastando um objeto da janela banco de dados 1. Posicione a janela macro e a janela banco de dados de modo que ambas fiquem visveis em sua tela (para redimencionar e posicionar rapidamente as janelas, escolha lado a lado no menu janela). 2. Na janela banco de dados, clique no boto para o ripo de objeto que deseja arrastar. Por exemplo, clique no boto formulrio para arrastar um formulrio. 3. Arraste o objeto a partir da janela banco de dados para uma linha de ao na janela macro. Se voc arrastar uma tabela, consulta, formulrio, relatrio ou mdulo para a janela Macro, o MS-Access adiciona uma ao que abre a tabela, consulta, formulrio ou relatrio. Se voc arrastar uma macro para a janela Macro, o MSAccess adiciona uma ao que executa a macro.

Definindo argumentos
A maioria das aes tem argumentos que do ao MS-Access informaes adicionais sobre como executar a ao, tais como qual objeto ou dados utilizar. Por exemplo, a ao AbrirUmaTabela tem um argumento Nome da Tabela que informa ao MS-Access qual tabela do banco de dados abrir. Depois de adicionar uma ao, voc define os argumentos para a ao na parte de baixo da janela Macro. Para definir um argumento, voc pode digitar um valor na caixa de argumentos ou em muitos casos voc pode selecionar o argumento apropriado de uma lista. Muitas aes tm um argumentos que pede o nome de um objeto de banco de dados. Voc pode usar uma tcnica similar de arrastar e largar para definir estes e outros argumentos: voc arrasta o objeto para a parte inferior da janela Macro e o larga no argumento que deseja definir. Por exemplo, suponha que voc adicione a ao AbrirUmaTabela a uma macro inserindo a ao na linha de ao. Para definir o argumento Nome da Tabela da ao, voc tanto pode selecionar a tabela desejada da lista do argumento Nome da Tabela, como voc j pode arrastar a tabela da janela Banco de Dados para o argumento Nome da Tabela.

Salvando uma Macro


voc deve salvar uma macro antes de execut-la. Quando voc salva uma macro, ela se torna um objeto de banco de dados que voc pode abrir ou executar a partir da janela Banco de Dados.

Apostila do MS-Access Avanado

NetoDADOS
Criando um grupo de macro

29

Voc s vezes pode achar conveniente agrupar algumas macros relacionadas em uma janela Macro. Para agrupar macros, voc cria um grupo de macros. Um grupo de macro um conjunto de uma ou mais macros que aparecem na mesma janela Macro. As prprias macros individuais so executadas independentes umas das outras. Por exemplo, suponha que voc tenha seis botes de comando em um formulrio, cada um abrindo um formulrio diferente. Em vez de ter seis macros separadas em seu banco de dados, uma para cada boto, voc pode criar um grupo de macro que contenha uma macro para cada boto. Desta forma, voc tem todas as macros relacionadas ao formulrio juntas em um conveniente documento. Em vez de abarrotar a lista de macros da janela banco de dados com mais de seis macros, voc adiciona somente uma. Para criar um grupo de macro 1. Crie uma macro (na janela Banco de Dados, clique no boto Macro e, ento, escolha o boto Novo). 2. Na janela Macro, escolha Nome da Macro no menu Exibir (ou clique no boto Nome da Macro na barra de ferramentas). O MS-Access exibe a coluna Nome da Macro na parte superior da janela Macro. 3. Digite um nome da macro para cada conjunto de aes que compem uma macro.

Apostila do MS-Access Avanado

NetoDADOS
Usando condies em macros

30

Em alguns casos, voc pode querer executar uma ao ou uma srie de aes em uma macro somente se um determinada condio for verdadeira. Por exemplo, se voc est usando uma macro para validar dados em um formulrio, voc pode querer exibir uma mensagem em resposta a um conjunto de valores inseridos em um registro e uma outra mensagem em resposta a um conjunto diferente de valores. Em casos como esses, voc pode usar condies para controlar o fluxo da macro. Uma condio uma expresso lgica. A macro segue caminhos diferentes se a condio for verdadeira ou falsa. A tabela seguinte mostra exemplos de condies de macros. Condio Formulrios![Estudantes]![Idade]>21 Resultado Se o valor no controle Idade do Formulrio Estudantes for maior que 21, ento... [Cidade]=Paris Se o valor no controle Cidade do formulrio do qual a macro foi executada for Paris, ento... Formulrios![Clientes]![Pas] = USA E Se o valor no controle Pas do formulrio Formulrios![Clientes]![Cdigo do Cliente] Clientes for USA e o valor do controle <31 Cdigo do Cliente do formulrio Clientes for menor que 31, ento... Voc insere condies na coluna Condio na janela Macro. Se uma condio for verdadeira, o MS-Access executa a ao naquela linha. Voc pode fazer com que o MSAccess execute uma srie de aes se a condio for verdadeira digitando elipses (...) na coluna Condies das aes que seguem imediatamente a condio. Para adicionar uma condio a uma macro 1. Na janela Macro, escolha Condio no menu Exibir (ou clique no boto Condio na barra de ferramentas). O MS-Access exibe a coluna Condio na janela macro. 2. Na coluna Condio, insira uma expresso condicional na linha onde voc deseja definir a condio. 3. Na coluna Ao, insira a ao que voc deseja que o MS-Access execute quando a condio for verdadeira.

Apostila do MS-Access Avanado

NetoDADOS

31

Se voc quiser que o MS-Access execute mais de uma ao, adicione as aes e digite elipses (...) na coluna Condio ao lado de cada ao que voc queira executar se a condio for verdadeira, como mostrado na seguinte ilustrao.

Quando voc executa a macro, o MS-Access avalia cada expresso na coluna Condio. Se a expresso for falsa, o MS-Access ignora a ao e move para a prxima linha de ao que no tenha elipses. Se a expresso for verdadeira, o MS-Access executa a ao ao lado da expresso e todas as aes seguintes que tenham elipses na coluna Condio. Se o MS-Access atingir uma clula vazia na coluna Condio, ele executar a ao daquela coluna sem se preocupar com a expresso condicional. Se o MS-Access atingir uma outra expresso condicional, ele avaliar a nova expresso para determinar se executa ou no a ao a lado.

Apostila do MS-Access Avanado

NetoDADOS
Lista de aes de Macro
Categoria Dados em formulrios relatrios Descrio e Restringir dados Mover atravs dos dados Ao AplicarFiltro

32

Execuo

Executar um comando

EncontrarPrxima, EncontrarRegistro, IrParaControle, IrParaPgina, IrParaRegistro ExecutarItemDoMenu

Executar uma Macro, AbrirConsulta, procedimento ou consulta ExecutarCdigo, ExecutarMacro, ExecutarSQL Executar um outro aplicativo ExecutarAplicativo Parar execuo CancelarEvento, Sair, Parar Macro, PararTodasMacros Importar/Exportar Transferir dados entre o MS- TransferirBancoDeDados, Access e outros formatos de TransferirPlanilha, dados TransferirTexto Enviar objetos do MS- SairPara, EnviarObjeto Access para outro aplicativos

Apostila do MS-Access Avanado

NetoDADOS
Categoria Manipulao de objetos Descrio Definir o valor de campo, controle propriedade Atualizar dados ou a tela Ao um DefinirValor ou RedesenharObjeto, RepetirAconsulta, ExibirTodosRegistros SelecionarObjeto Selecionar dados um banco de CopiarObjeto, Renomear Copiar ou Renomear um objeto ExcluirObjeto Excluir um objeto

33

Fechar, AbrirFormulrio, Abrir ou fechar um objeto de AbrirMdulo, AbrirConsulta, banco de dados AbrirRelatrio, AbrirUmaTabela AbrirFormulrio, Imprimir um objeto de banco AbrirConsulta, de dados AbrirRelatrio, Imprimir Maximizar, Minimizar, Mover ou redimensionar uma MoverDimensionar, janela Restaurar Exibir informaes na tela Eco, Ampulheta, CaixaDeMensagem, DefinirAvisos Exibir ou ocultar a barra de ExibirBarraDeFerramentas ferramentas Gerar teclas pressionamento de EnviaSequnciaDeCaracteres AvisoSonoro

Miscelnea

Soar um aviso

Criar uma barra de menu AdicionarMenu personalizado para um formulrio ou relatrio

Apostila do MS-Access Avanado

NetoDADOS
Respondendo a eventos em formulrios

34

Quando voc usa um formulrio, o MS-Access reconhece certos acontecimentos no formulrio como eventos. Por exemplo, mover de um registro para outro em formulrios um evento; bem como clicar duas vezes em um controle. Voc pode usar uma macro para responder a um evento.

Fazendo Formulrios trabalharem em conjunto


Se voc tem um formulrio com um sub-formulrio em seu banco de dados, ento voc j viu uma maneira do MS-Access tornar possvel diferentes formulrios trabalharem juntos. Um sub-formulrio na realidade um formulrio separado inserido em um formulrio principal. Na maioria dos casos, voc usa sub-formulrios para mostrar registros relacionados a um registro do formulrio principal. Por exemplo, um sub-formulrio poderia conter uma lista de todas as partes integrantes de um produto manufaturado e o formulrio principal poderia conter informaes sobre o prprio produto. Quando voc movesse para um novo registro no formulrio principal, o subformulrio passaria a mostrar os registros relacionados ao do formulrio principal. Usando macros, voc pode mostrar registros relacionados de outra forma. Voc pode mostrar registros relacionados em dois formulrios ao mesmo tempo, cada um em sua prpria janela. Isso d a voc a convenincia adicional de poder redimensionar, mover e fechar qualquer dos formulrios independentes um do outro. Exibir dados relacionados no a nica maneira de usar macros para fazer seus formulrio trabalharem juntos. Voc pode responder a um evento ocorrido em um formulrio fazendo com que algo ocorra em outro formulrio. Por exemplo, pode-se abrir um formulrio, redimension-lo ou mov-lo, exibir ou ocultar controles e atualizar dados, entre outras coisas. possvel tambm abrir uma caixa de dilogo personalizada para coletar as informaes necessrias para completar uma tarefa. Por exemplo, voc poderia usar uma caixa de dilogo para perguntar qual dos vrios relatrios dirios imprimir. Observao: Voc pode desejar usar a ao RepetirAConsulta em uma macro para repetir a consulta de origem de um formulrio, sub-formulrio ou controle. Isso garante que os registros mais recentes sejam exibidos.

Apostila do MS-Access Avanado

NetoDADOS

35

Atribuindo macros de validao a eventos de formulrio e de controle


Para usar uma macro para validao de dados, voc atribui a macro propriedade de evento apropriada do formulrio ou controle. As propriedades mais comumente usadas em validao de dados so AntesDeAtulaizar e AoExcluir. AntesDeAtualizar: Se Voc especifica uma macro como definio da propriedade de formulrio AntesDeAtualizar, a macro executada quando o controle em um registro que te tenha sido alterado e vai para um controle em um registro diferente, mas antes do MS-Access salvar as alteraes na tela. Isso costuma ser usado quando a validao envolve valores em mais de um campo do formulrio. Se voc especifica uma macro como definio da propriedade de controle AntesDeAtulaizar, a macro executada quando o foco deixa um controle cujo valor tenha sido alterado, mas antes do MS-Access aceitar a alterao. Um exemplo quando a validao em um controle requer mais de uma condio. Os eventos AntesDeAtualizar tanto de controles como de formulrios tambm ocorrem se voc escolher o comando Salvar Registro do menu Arquivo quando o foco estiver em um registro que tenha sido alterado. AoExcluir : Se voc especifica uma macro como definio da propriedade de formulrio AoExcluir, a macro executada antes do MS-Access excluir um registro de uma tabela. Isso costuma ser usado tanto em verificao de integridade referencial, como para se certificar de que um cliente no tenha pedidos abertos, antes de excluir o registro do cliente. Embora o MS-Access tenha uma opo Reforar Integridade Referencial incorporada, voc pode no querer acionar essa opo em todos as ocasies. Em tais casos, voc pode usar uma macro especificada como definio da propriedade AoExcluir e obter resultados similares possvel definir regras de validao usando macros ou definir a propriedade RegraDeValidao para controles e as propriedades RegraDeValidao para campos e registros. Estas so avaliadas na seguinte ordem quando voc altera os dados em um controle de um formulrio e, ento, move para outro registros;

Apostila do MS-Access Avanado

NetoDADOS

36

A macro AntesDeAtualizar do controle A macro AntesDeAtualizar do formulrio A expresso na propriedade RegraDeValidao do controle A expresso na propriedade RegraDeValidao do campo de origem do controle vinculado A expresso na propriedade RegraDeValidao da tabela de origem Uma vez que voc pode usar a ao CancelarEvento na macro de validao, podese usar a macro para uma validao preliminar; se a validao for bem sucedida, voc pode, ento, passar para a validao do controle, registros ou campo.

Exibindo mensagens de validao diferentes para condies diferentes


Vamos utilizar como exemplo uma empresa que importa produtos de fornecedores localizados em muitos pases ao redor do mundo. Como pases diferentes tm regras diferentes para seus cdigos postais, voc no pode simplesmente usar uma regra de validao para garantir que um valor inserido no controle Cdigo Postal tenha as caractersticas corretas. Voc pode, porm, escrever uma macro que verifique qual pas est inserido no controle Pas e, ento, verifique se o valor inserido no controle Cdigo Postal tem as caracterstica certas para aquele pas. A macro tem duas condies. Para inserir as condies na janela Macro, clique no boto Condio na barra de ferramentas. Isso exibe a coluna Condio na janela Macro. A primeira condio na macro verifica o cdigo postal dos fornecedores localizados na Frana, Itlia ou Espanha. Esses pases tm cdigos postais de 5 dgitos. Insira a seguinte expresso condicional: [Pas] Em (France;Itlia;Spain) E Compr([Cdigo Posta])<>5 O operador Em compara o valor no controle Pas do formulrio atual com a lista de pases dentro dos parnteses. A funo Compr conta o nmero de caracteres no controle Cdigo Postal. Se um pas estiver na lista e o nmero de caracteres do cdigo postal no for igual a 5, o MS-Access executar a ao na mesma linha que a condio e quaisquer aes imediatamente a seguir que tenham reticncias(...) na coluna Condio.

Apostila do MS-Access Avanado

NetoDADOS

37

A seguir, adicione duas aes para executar quando a condio for atendida: a ao CaixaDeMensagem e a ao CancelarEvento. A tabela seguinte mostra os argumentos chave para a ao CaixaDeMesagem. Argumento Mensagem Tipo Ttulo Definio Descrio O cdigo Postal precisa ser A mensagem a exibir na de 5 caracteres. caixa de mensagem Informao O tipo de cone a exibir com a mensagem Erro de Cdigo Postal O ttulo que aparece no topo da caixa de mensagem

A segunda condio na macro usa o mesmo tipo de expresso que a primeira, exceto que verifica o cdigo postal do fornecedores localizados na Austrlia e Singapura. Esses pases tm cdigos postais de 4 dgitos. Insira a seguinte expresso condicional: [Pas]Em(Australia;Singapura)E Compr([Cdigo Postal])<>4 Adicione as mesmas duas aes a serem executadas quando a condio for satisfeita mas, altere o argumento Mensagem da ao CaixaDeMensagem para que se leia: O Cdigo Postal precisa ser de 4 caracteres. Finalmente, adicione uma ao IrParaControle que mova o foco para controle Cdigo Postal, facilitando a correo do erro. Salve a macro e d o nome Verificar Cdigos Postais.

Apostila do MS-Access Avanado

NetoDADOS

38

Finalmente, defina a propriedade AntesDeAtulizar do formulrio para Verificar Cdigos Postais, o nome de sua macro. Voc usa a propriedade do formulrio em vez da propriedade do controle porque sua validao envolve dois controles diferentes no formulrio. Agora quando voc usar o formulrio para adicionar um novo fornecedor, o MSAccess executar sua macro de validao depois que voc terminar de inserir o novo registro, mas antes de salv-lo na tabela Fornecedores. Se alguma condio na macro for satisfeita, o MS-Access exibir a mensagem apropriada e no salvar o registro na tabela Fornecedores. Em vez disso, o foco continuar no registro para que voc possa corrigir os dados invlidos.

Criando nossos prprios menus


Para criar um menu personalizado temos que utilizar pelo menos duas macros, uma para definir o menu e outra para adicionar o menu.

Definio do Menu
1. Crie uma Macro nova; 2. Adicione a coluna de nomes macro; 3. Na coluna nome digite o nome do menu, se desejar que uma letra fique sublinhada para ser tecla de acesso, antes da letra coloque o smbolo &; 4. Na coluna ao, coloque o que voc deseja que a macro faa. Veja o exemplo: Nome &Abrir &Fechar &Sair Ao AbrirUmaTabela Fechar Sair Descrio Abre a tabela de Clientes Fecha o objeto ativo Adiciona um separador ao menu Sai do Access

Quando terminar, salve a macro com o nome de MENU XXXX_YYYY, onde XXXX a barra de menu a que este menu pertence, e YYYY e o nome do menu. Vejamos o exemplo: Menu Principal_Arquivo

Apostila do MS-Access Avanado

NetoDADOS
Definio da Barra de Menu
1. 2. 3. 4.

39

Crie uma nova macro; Adicione a coluna de nome macro; Na coluna Ao, escolha a ao AdicionarMenu Nos argumentos da macro, coloque o nome do Menu ( que ir aparecer na tela, vale tambm a regra do &), e o nome da macro que ser ativada quando este menu for selecionado.

Salve a macro com o nome da Barra de menu que voc deseja criar.

Atribuindo uma Barra de Menu a um formulrio


Escolha o formulrio que voc deseja colocar a barra de menus, na Propriedade Barra de Menu, escolha o nome da macro que representa a sua barra de menus. Mude para o modo formulrio e veja como ficou o menu.

Apostila do MS-Access Avanado

NetoDADOS
Mdulos

40

Para uma maior flexibilidade na manipulao dos seus dados, foi implementada no Access uma linguagem de programao chamada Access Basic, um dialeto do Visual Basic, que permite uma rea para criao de rotinas vo complementar o seu banco de dados.

Estrutura do Mdulo
Sub - SubFuno, uma seqncia de comandos que executa alteraes em formulrios, tabelas ou qualquer outro objeto do MS-Access. Mas no retornado nenhum valor para quem chamou esta Sub. Function - Faz exatamente a mesma coisa que a Sub, mas tem obrigatoriamente que retornar um valor para que a chamou.

Declarando Variveis
Existem dois tipos de declaraes de variveis, uma a nvel de Mdulo, que visvel em todas as Subs e Functions do Mdulo e as que so visveis apenas em numa funo ou numa subfuno. Declarao Global - Utilizada no nvel de mdulo para declarar variveis globais (variveis disponveis em todos os procedimentos em todos os mdulos) e alocar espao de armazenamento. Declarao Dim - Utilizada no nvel de mdulo e no nvel de procedimento para declarar as variveis e alocar espao de armazenamento. Quando utilizada a nvel de mdulo, as variveis declaradas so visveis a todos os procedimentos contidos no modulo. Se declaradas dentro de procedimentos, estas s sero visveis no procedimento onde foram declaradas.

Apostila do MS-Access Avanado

NetoDADOS
Tipos de Dados

41

A seguinte tabela mostra os tipos de dados fundamentais suportados pelo Access Basic, sufixo de declarao de tipo, tamanho dados e valores aceitveis. Tipo de Dados Integer Long(inteiro longo) Single(ponto flutuante de preciso simples) Double (ponto flutuante de preciso dupla) Currency(inteiro dimensionado) String Variant Sufixo % & ! # Tamanho dos dados 2 4 4 Valores aceitveis

@ $ Nenhu m

-32.768 a 32.767. -2.147.483.648 a 2.147.483.647. -3,402823E38 a -1,401298E-45 para valores negativos; 1,401298E-45 a 3,402823E38 para valores positivos; e 0. 8 -1,79769313486232 E308 a -4,94065645841247 E-324 para valores negativos; 4,94065645841247 E-324 a 1,79769313486232 E308 para valores positivos; e 0. 8 -922.337.203.685.477,5808 a 922.337.203.685.477,5807. 1 byte por 0 at aproximadamente 65.535 bytes. (Devecaractere se deixar uma margem para o armazenamento). Conforme Qualquer valor numrico at o intervalo de apropriado um tipo de dados Double ou qualquer texto de caractere.

Vejamos um exemplo de como o modulo estruturado:

Apostila do MS-Access Avanado

NetoDADOS
Descrio dos itens utilizados na pgina anterior: Function

42

Declara uma funo, um bloco de comandos que ao seu trmino retorna um valor, neste exemplo, retornado uma seqncia de caracteres Maisculas Nome da funo, este nome pode ser definido pelo usurio (cTexto As String) cTexto o nome de uma varivel que passada para esta funo; As String identifica o tipo de dado que esta varivel contem. As String Informa o tipo de dado que retornado pela funo Dim Declara uma ou mais variveis String Vide Tipos de Dados Ucase$() Funo padro do Access Basic, torna todos os caracteres passados a ela em caracteres Maisculos Para retornarmos um valor de qualquer funo definida pelo usurio, devemos atribuir o valor de retorno a funo, como vemos na penltima linha deste modulo.

Usando dados contidos nos Formulrios


A coleo Forms contm todos os objetos Formulrios abertos em um banco de dados do Microsoft Access. Use a coleo Forms no Access Basic ou uma expresso para se referir a um formulrio em particular. Por exemplo, voc pode usar a coleo Forms para verificar ou definir o valor de um controle de formulrio. O objeto Formulrio contm todas as propriedades da folha de propriedades de um formulrio. Voc pode se referir a um formulrio das seguintes maneiras: Forms![MeuFormulrio] Forms("MeuFormulrio")
NomeEmp=Forms![Empregados]![Sobrenome] & "," & Forms![Empregados]![Primeiro nome]

No exemplo acima, a varivel NomeEmp recebe o contedo do controle Sobrenome mais o contedo do controle [Primeiro nome], ambos contidos no formulrio Empregados. Podemos utilizar a coleo forms para testar condies em uma macro, neste caso, quando voc pressionar a tecla Enter terminando a condio, a palavra Forms, ser substituda pela palavra Formulrio, no implicando em nenhum tipo de erro. Condio Forms![Produtos]!Descontinuado=SIM Ao CaixaDeMensage Descrio Se no tiver mais produtos

Apostila do MS-Access Avanado

NetoDADOS
m

43 exibe uma mensagem de erro

Objetos de Banco de Dados


O Access possui vrios objetos e colees de objetos para tratamento de banco de dados, vamos discuti-los um a um. Objeto DBEngine Descrio O DBEngine representa o sistema de recuperao e armazenamento de dados do Access, ele tem controle sobre todos os outros objetos WorkSpace Um objeto Workspace define uma sesso para um usurio. Contm bancos de dados abertos e provm mecanismos para transaes simultneas e para um grupo de trabalho seguro. Database Banco de Dados em si, um arquivo MDB, com suas tabelas, consultas e etc... TableDef Contem todos os itens de uma tabela, campos e ndices. Field Contem as definies para um campo Index Contem as definies para um ndice, campo, nico e etc... QueryDef Definies de uma consulta, qualquer tipo RecordSet Conjunto de registros de uma tabela Relation O objeto Relation representa um relacionamento entre duas tabelas Todos os itens em negrito representam uma coleo de objetos, a diferena que a coleo no plural e o objeto tem o nome no singular. Para sabermos o nome dos campos de uma tabela, devemos utilizar a coleo fields. Processo para trabalhar com o banco de dados atual:
01 Function Exemplo 02 03 05 06 07

Dim db As Database Dim I As Integer Set db = DBEngine(0)(0)

Define uma varivel do tipo Database Define uma varivel do tipo inteiro Atribui o Banco de dados atual a db

For I = 0 to db.TableDefs.Count -1 conta at a ltima tabela Debug.Print db.TableDefs(I).Name Imprime o nome de cada Next db.Close

tabela
08 09

10 End Function

Apostila do MS-Access Avanado

NetoDADOS

44

No exemplo da pgina anterior, uma varivel do tipo Database declarada (02), na linha 05 atribuda a ela o banco de dados atual. Nas linhas seguintes feito um lao contando todas as tabelas que existem no banco de dados atual (06), na linha 07 utilizado o objeto Debug para imprimir na Janela Imediata, o nome da tabela atual apontada pela coleo TableDefs, TableDefs um vetor contendo todas as tabelas do banco de dados, a linha 08 fecha o lao e a 09 fecha o banco de dados db. Experimente criar um mdulo novo e digite a funo acima, quando terminar, escolha no menu executar a opo Compilar mdulos carregados para verificar se no existe nenhum erro de digitao. Se no houver erro, posicione o cursor na primeira linha de cdigo aps a declarao Function e pressione F9 para gerar um ponto de parada. Minimize a janela. Na janela de Banco de dados selecione o objeto Macro, crie uma nova macro para executar a nossa funo. Execute-a. Quando o Access atingir o ponto de parada, a janela de cdigo ser exibida para que possamos executar a funo passo-a-passo pressionando a tecla F8. No menu Exibir escolha a opo Janela imediata para podermos ver a sada da nossa funo.

Validao de campos com mdulos


Para cada campo num formulrio, podemos fazer validaes, utilizado o evento AntesDeAtualizar, podemos fazer validaes para os campos. Veja o exemplo dado para o evento AntesDeAtualizar para o campo Nome do Contato: Sub Nome_do_contato_BeforeUpdate (Cancel As Integer) Const MB_STOP_BUTTON = 16 If IsNull([Nome do Contato] ) Or IsEmpty([Nome do Contato] ) Then MsgBox "Este campo no pode ficar vazio", MB_STOP_BUTTON, "Validao de Campo" Cancel = True End If End Sub No exemplo acima verificado se o campo [Nome do Contato] nulo ou est em branco, se ele for um dos dois, a caixa de mensagem ser exibida com o smbolo de parada crtica. Se for atribudo o valor verdadeiro ( true ) para a varivel Cancel, o evento AntesDeAtualizar ser cancelado, o campo no ser atualizado e o foco permanecer no campo [Nome do Contato].

Apostila do MS-Access Avanado

Das könnte Ihnen auch gefallen