Escolar Documentos
Profissional Documentos
Cultura Documentos
APOSTILA - Access Avançado
APOSTILA - Access Avançado
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 II..................................................................................................................................10 CONSULTA ATUALIZAO : .........................................................................................................................10 Exerccio III................................................................................................................................10 CONSULTA ANEXAO : ...............................................................................................................................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 CALCULANDO UM TOTAL PARA UM GRUPO DE REGISTROS ................................................................................19 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 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
ii
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:
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 multi-usurio, 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.
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.
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)
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";
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 para recuperar registros duplicados: SELECT [Nome da empresa], [Cidade] FROM [Fornecedores] UNION ALL SELECT [Nome da empresa], [Cidade] FROM [Clientes];
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.
CURRENCY
8 bytes
DOUBLE
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.
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.
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.
Exerccio I
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.
Consulta anexao:
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.
Estruturando formulrios
Criando Controles
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.
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.
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.
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.
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.
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
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.
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.
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
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.
Estruturando relatrios
Adicionando sees
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.
Cabealho do Grupo
Aparece no incio de um novo grupo de registros. usado para exibir itens, tais como o nome do grupo.
Seo detalhe
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.
Exerccio VII
Crie um relatrio para mostrar uma sada como o padro abaixo:
Macros
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.
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.
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.
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.
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.
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.
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.
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.
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 MS-Access 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.
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.
Execuo
Executar um comando
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-Access SairPara, EnviarObjeto para outro aplicativos
Descrio Ao Definir o valor de um campo, DefinirValor controle ou propriedade Atualizar dados ou a tela RedesenharObjeto, RepetirAconsulta, ExibirTodosRegistros de SelecionarObjeto
Selecionar dados
um
banco
Abrir ou fechar um objeto de Fechar, AbrirFormulrio, banco de dados AbrirMdulo, AbrirConsulta, AbrirRelatrio, AbrirUmaTabela Imprimir um objeto de banco AbrirFormulrio, de dados AbrirConsulta, AbrirRelatrio, Imprimir Mover ou redimensionar uma Maximizar, Minimizar, janela MoverDimensionar, 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
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.
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.
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.
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
Salve a macro com o nome da Barra de menu que voc deseja criar.
Mdulos
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.
Tipos de Dados
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.
Descrio dos itens utilizados na pgina anterior: Function Maisculas (cTexto As String) As String Dim String Ucase$() Declara uma funo, um bloco de comandos que ao seu trmino retorna um valor, neste exemplo, retornado uma seqncia de caracteres Nome da funo, este nome pode ser definido pelo usurio cTexto o nome de uma varivel que passada para esta funo; As String identifica o tipo de dado que esta varivel contem. Informa o tipo de dado que retornado pela funo Declara uma ou mais variveis Vide Tipos de Dados 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.
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
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
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.