MS Access Avançado - Prof Hedson Lima
MS Access Avançado - Prof Hedson Lima
MS Access Avançado - Prof Hedson Lima
O Instrutor
Hedson Rodrigues Lima
Formado em Ciência da Computação pela
Universidade Católica de Brasília
MBA em Gestão e Governança em TI
Professor Universitário no UniProjeção
Experiência em gerenciamento de projetos há
mais de 12 anos
Certificado PMI - PMP, CTFL, RUP e em
ferramentas de ALM da Borland
Especialista em qualidade de software dentro dos
modelos ISO 9001:2000 e CMMi
Tópicos
Conceitos de Bancos de Dados Relacionais
Tabelas e Relacionamentos
Consultas e SQL
Formulários
Relatórios
Macros
3
Conceitos de Banco de Dados
Bancos de Dados
Conjuntos de Registros,
dispostos em estrutura
regular que possibilita a
reorganização dos
mesmos e produção de
informação.
Tabela, Linha e Coluna
Tabela: Estrutura Linha: Uma
que armazena ocorrência particular
dados referentes de um dado em uma
às ocorrências das tabela. Também
entidades (ou chamado de Tupla
relacionamentos em álgebra
com atributos). relacional
Também chamada
de Relação em Coluna: Cada tipo
álgebra de informação
relacional. armazenada na
tabela. Possui um
nome e um tipo.
Exemplo de Tabela
Sistema Gerenciador de
Bancos de Dados
Coleção de dados
inter-relacionados
e um conjunto de
programas para
acessá-los.
Seu objetivo é
prover um
ambiente que seja
adequado e
eficiente para
recuperar e
armazenar
Chaves
Conceito usado para especificar
restrições de integridade básicas de
um SGBD relacional
Dois tipos
chave primária
chave estrangeira
Chave primária
Chave estrangeira
Uma coluna ou uma combinação de
colunas, cujos valores aparecem
necessariamente na chave primária de
uma tabela
Mecanismo que permite a implementação
de relacionamentos em um banco de
dados relacional
Chave estrangeira
Elementos do Access
13
Tabelas
Uma tabela é uma simples estrutura
composta por linhas e colunas. As tabelas
devem conter dados inerentes as suas
especificações, por exemplo, se for uma
tabela Carros, os dados devem ser ano,
marca, modelo e preço. Um banco de
dados pode ter diversas tabelas, por
exemplo, a tabela Carros, Fornecedores,
Clientes, Manutenção, etc. As tabelas
relacionam-se entre si pela vinculação de
um ou mais itens da tabela.
14
Tabelas
15
Consultas
A consulta, dentro do contexto de banco
de dados, é um recurso muito importante,
pois permite extrair somente as
informações que você deseja naquele
momento. É possível utilizar consultas
para filtrar dados, executar cálculos e
resumir dados.
16
Consultas
17
Formulários
Um formulário é composto por campos
predefinidos, facilitando o preenchimento
de informações. Ele é utilizado para a
arrecadação e armazenamento de dados.
No contexto de banco de dados, um
formulário pode arrecadar dados e
armazená-los em sua base dados. Além
disso, é possível inserir controles de ação,
como botões, dando maior dinamismo e
facilitando sua utilização.
18
Formulários
19
Relatórios
O objetivo do relatório é expressar
resultados específicos, por exemplo, o
total de vendas, o total de funcionários,
os lucros, os prejuízos, as compras,
permitindo uma análise da situação.
20
Relatórios
21
Macros
Macro é um recurso constituído por um
conjunto de ações para a execução de
uma ou de várias tarefas específicas. As
macros podem ser introduzidas em
botões, para que, quando acionados,
executem uma tarefa específica, como a
criação de uma tabela, um relatório, o
fechamento do banco, o salvamento do
bando de dados, entre outras inúmeras
tarefas que normalmente são realizadas
manualmente, mas podem ser
automatizadas.
22
Macros
23
Tabelas
24
Modos de Criação
Alterne o modo de exibição usando o
botão:
Folha de Dados: Permitir criar colunas e
inserir os dados ao mesmo tempo.
Modo Design: Permite informar todos os
atributos de cada campo.
25
Adicionar colunas
26
Tipos de Dados
Texto: Aceita caracteres normais como letras e número. É distribuído nos campos
Texto Curto e Texto Longo. O campo Texto Curto tem um limite de 255
caracteres, e o campo Texto Longo não tem limite.
Número: Aceita números e permite a configuração de contas, casas decimais, entre
outras relacionadas a número.
Data/Hora: Permite a inserção somente de dados no formato de data e hora.
Moeda: Recebe número e insere automaticamente o cifrão da respectiva moeda
configurada e as casas decimais.
Numeração Automática: Campo destinado a ser chave primária da tabela. Cria
numeração automática conforme uma nova linha é inserida na tabela. Não é
possível alterar seus números.
Sim/Não: Permite optar pelas opções Sim ou Não, ou, então, Verdadeiro ou Falso.
Objeto OLE: Utilizado para exibir dados de arquivos criados em outros programas,
por exemplo, o Excel.
Hiperlink: Utilizado para inserir links de endereços Web.
Anexo: Possibilita o anexo de arquivos, porém não é possível digitar o texto.
Calculado: Permite criar expressões de cálculo automático de campos.
Assistente de pesquisa: Utilizado para criar listas suspensas de valores e de
pesquisa. Na lista de valores, é necessária a inserção dos valores manualmente para
que eles estejam presentes na lista suspensa.
27
Propriedades das Colunas
(Modo Design)
28
Tamanho de Campo - Numérico
29
Formato
Propriedade que permite configurar o
formato de exibição do dado em campos
de texto, números, moedas, data e hora,
etc. Por exemplo, no tipo de dados
Moeda, é possível configurar se o valor
será exibido em reais, euros,
porcentagem, entre outros modos. No
tipo de dados Data/Hora, pode-se
configurar se a data será exibida
completa, abreviada, com ou sem o
horário, por exemplo.
Existem formatos predefinidos e também
é possível criar os próprios formatos.
30
Máscara de Entrada
A Máscara de Entrada permite facilitar a
entrada de dados e controlar os valores
que os usuários podem inserir em um
controle que receba texto. Por exemplo,
em formulários que são necessários a
inserção de RG, CPF e CEP, os campos são
configurados por uma máscara de entrada
a fim de facilitar o preenchimento de
campo e validá-lo somente se o número
inserido for compatível com a máscara
configurada.
31
Mascara de Entrada
O primeiro conceito a aprender sobre a máscara
de entrada é que ela possui seções distintas
separadas por ponto e vírgula (;). Veja as seções
na máscara apresentada:
33
Legendas
A propriedade legenda apresenta informações
do campo ao usuário. Ela possui um limite de
2.048 caracteres.
As legendas podem ser exibidas das seguintes
maneiras:
As legendas dos formulários descrevem o texto
que aparece na Barra de Título, localizada no
modo Formulário.
As legendas de relatórios descrevem o título do
relatório no modo Visualizar Impressão.
As legendas de campos descrevem os rótulos em
anexos a controles criados, quando algum campo
da lista de campos é arrastado.
As legendas de rótulo e de botão descrevem o
texto que aparece no controle.
34
Outras Propriedades
Valor Padrão
Esta propriedade exibe um valor inicial ao
campo no momento em que ele é ativado para
preenchimento.
Regra de Validação
Esta propriedade cria critérios de inserção de
dados nos campos, controlando e limitando
informações que esteja fora do critério criado.
Ela pode ser inserida em campos de tabelas ou
em controles de formulários.
Texto de Validação
Mensagem que deve ser exibida caso a regra de
validação seja violada
35
Outras Propriedades
Requerido
Esta propriedade define se um valor é ou não
requerido em um determinado campo. Quando
ela possui um valor Sim, o campo deve ser
preenchido com algum valor obrigatoriamente.
Caso possua o valor Não, o campo pode ser
preenchido com um valor nulo, ou seja, sem
valor nenhum.
Permissão de Comprimento Zero
Se a propriedade Permitir comprimento zero
for configurado como Sim, a sequência de
comprimento zero será válida no campo; se for
configurada como Não, não será válida.
36
Índices
Permite definir um índice em um determinado
campo, com o objetivo de acelerar consultas em
campos indexados. Em outras palavras, essa
propriedade possibilita a criação de um índice em
um campo que o aceite, como exemplo, o campo
Nome. Com isso, a localização do nome torna-se
mais rápida e eficiente.
Essa propriedade não pode ser inserida nos
campos Objeto OLE, Calculado e Anexo.
Veja as opções de configuração da propriedade
Indexado:
Não: Não cria índices.
Sim (duplicação autorizada): O índice inserido permite
duplicações.
Sim (duplicação não autorizada): O índice inserido não
permite duplicações.
37
Relacionamentos
O relacionamento entre tabelas torna possível
criar um banco de dados relacional, com o
objetivo de interligar várias tabelas de um
banco de dados para formar um sentido.
As relações são realizadas por meio dos
registros, atributos ou campos. A cada item
da tabela corresponde um campo de valor
único, por exemplo: Código, ID, entre outros.
É necessário criar chaves primárias em
tabelas, as quais serviram como chaves
estrangeiras em outras tabelas. Somente com
a atribuição de chaves nas tabelas é que o
relacionamento poderá ser realizado.
38
Criar Relacionamentos
39
Criar Relacionamentos
Arraste a Chave Primária de uma tabela
para o campo de Chave Estrangeira de
outra tabela.
40
Criar Relacionamentos
42
Integridade Referencial
44
Consultas
No contexto de banco de dados, as
consultas possuem grande importância.
Por meio delas se torna possível extrair as
informações necessárias do banco de
dados e responder as principais questões
do dia a dia no trabalho.
Independentes de quantas tabelas
existam no banco de dados, podem-se
criar consultas envolvendo dados de
várias tabelas diferentes e analisá-los
com clareza. Com as consultas também é
possível adicionar, alterar e excluir dados
da tabela, além de realizar cálculos.
45
Tipos de Consultas
Consulta Seleção: Utilizada para selecionar
somente os dados necessários de uma tabela ou
para fazer cálculos.
Consulta com Parâmetros: Utilizada para
executar com frequência variações de uma
consulta específica.
Consultas de Tabelas de Referências Cruzadas:
Utilizada para mostrar subtotais referentes a um
produto e também subtotais de produtos
referentes a um mês.
Consulta Ação: Utilizada para adicionar, alterar ou
excluir dados.
Consultas SQL: Utiliza comandos SQL, no banco
de dados, com o objetivo de obter mais foco no
resultado das consultas.
46
Criar Consultas
Modo Assistente
Utiliza um assistente para montar consultas
padrões. Pode ser utilizado para tarefas
simples, se não está familiarizado com o modo
de design.
Modo Design de Consulta
Permite criar consultas complexas, com todas
as ferramentas possível para a geração de
consultas.
47
Consultas no Modo Assistente
Consulta Seleção
A Consulta de Seleção é utilizada para filtrar e
visualizar somente os dados de determinados
campos de uma tabela, revisar dados de várias
tabelas simultaneamente ou apenas visualizar
os dados com base em determinados critérios.
Ao iniciar o Assistente de Consultas, é exibida
a janela abaixo. Selecione Consulta Simples.
48
Consulta Seleção
Selecione quais campos deseja exibir de
cada tabela. Use a Combo
Tabelas/Consultas para mudar de tabela.
49
Consulta Seleção
Ao final, dê um nome para sua consulta.
Selecione “Abrir a consulta” para ver os
dados de sua consulta.
Caso deseje modificar detalhes da
consulta, selecione “Modificar o design da
consulta”
50
Consultas no Modo Design
Clique em Design de Consultas. Em
seguida selecione as tabelas que deseja
exibir na sua consulta.
51
Design de Consulta
A janela de consulta é exibida:
52
Design de Consulta
Adicionar campos na consulta
Clique sobre o campo na tabela e arraste para
as colunas OU
Clique duas vezes sobre o campo
Classificar a consulta
Selecione para cada campo que deseja
classificar a opção “Classificação” como
Crescente ou Decrescente
A classificação acontecerá na ordem que as
colunas aparecem
53
Design de Consulta
Mover as colunas
Para mover, selecione a coluna no local (7)
indicado na figura, em seguida arraste a coluna
para o local desejado
Criando critérios
Em “Critérios”, defina o critério para seleção
de dados daquela coluna. Por exemplo, para
um campo “Data” o critério pode ser
“01/10/2018”, para que a consulta só traga
registros desta data.
Para usar critérios mais complexos, clique com
o botão direito na célula de critérios e
selecione a opção “Construir”
54
Construtor de Expressões
É possível inserir formulas matemáticas,
campos da tabela ou funções do Access.
Para que os campos da consulta apareçam, a
consulta deve ser salva previamente.
55
Design de Consulta
Ocultar colunas
Uma coluna pode ser usada como critério, mas
se não deseja que ela seja exibida, desmarque
a opção “Mostrar”
Executar a consulta
Utilize o botão “Executar” ou selecione o
modo “Folha de Dados”.
56
Design de Consulta
Criação de Parâmetros
No lugar de critérios fixos, podem ser criados
critérios dinâmicos, ou seja, são informados no
momento da consulta.
Para criar um parâmetro, na tabela exibida, na
linha Critérios, digite entre colchetes o texto
que deseja inserir na caixa de diálogo do
parâmetro, por exemplo [Digite o nome do
funcionário], lembrando que na caixa de
diálogo o texto será exibido sem os colchetes
57
Consulta com Totais
As consultas de seleção podem ser utilizadas para
gerar totais
Neste caso, não serão exibidas todas as linhas, e sim
agrupadas por algum critério.
Clique sobre o botão Totais
58
Consultas com Totais
Nas colunas “Agrupar por”, são
selecionados valores distintos (únicos)
Para as colunas de valores, seleciona a
operação a ser feita:
59
Consultas com Totais
60
Consulta Acrescentar
Para transformar uma consulta em
Acrescentar, selecione o botão
acrescentar:
61
Consulta Atualizar
Utilize a consulta de atualização para
atualizar valores em massa, baseado em
Critérios.
Selecione a opção Atualizar e preencha os
campos Atualizar para e Critérios
62
Consulta Exclusão
Assim como a atualização, a consulta
exclusão exclui dados que correspondem
a um critério.
63
Consulta SQL
O modo SQL permite criar consultas SQL
diretamente sobre o Access.
O SQL do Access é padrão ANSI 92 e pode
ser usado para qualquer objeto do banco
de dados.
64
SQL - Select
O primeiro e mais importante elemento da
DML que veremos é o elemento SELECT.
Muito utilizado por ser o elemento que nos
possibilita recuperar dados em meio a uma
query – se pronuncia “kueri” - ou consulta, no
português;
Cidade = “Taguatinga”
Salario > 1000
Operadores Relacionais
< Menor que
> Maior que
<> Diferente de
<= Menor ou Igual que
>= Maior ou Igual que
= Igual a
LIKE Pesquisa parcial de texto
Operadores Lógicos
AND
E lógico. Avalia as condições e devolve um
valor verdadeiro caso ambos sejam corretos.
OR
OU lógico. Avalia as condições e devolve um
valor verdadeiro se algum for correto.
NOT
Negação lógica. Devolve o valor contrário da
expressão.
ORDER BY
Suponhamos que temos a seguinte consulta:
SELECT Name, (Population) AS QtdPopulation
FROM City
…temos os seguintes exemplos de ordenação
do resultado da consulta
com a cláusula ORDER BY:
ORDER BY CountryCode ASC;
ORDER BY Name ASC, QtdPopulation DESC;
ORDER BY ID; -- coluna não abordada na
seleção
FORMULÁRIOS
74
Formularios
Servem para a inserção de dados nas
tabelas de forma mais amigável.
Podem ser gerados automaticamente para
cada tabela, ou manualmente.
Mesmo criados automaticamente, podem
ser modificados, conforme a necessidade.
75
Criando formulários automaticamente
76
Modos de Exibição de Formulário
Modo Formulario
Utilizado para operar o formulário. A entrada
de dados é feita nesse modo.
Modo Exibição de Layout
Mescla a operação do formulário, mas permite
a edição do layout
Modo Design
Modo para criação e alteração de formulários.
Neste modo, todas as alternativas de
customização ficam habilitadas.
77
Alterando propriedades dos campos
78
Criando novos componentes
Na aba “Design” da faixa de opções é
possível criar novos componentes para os
formulários.
79
Principais Controles
Controle Descrição
Rótulo (Texto Fixo)
Caixa de Texto (Editável)
Botão clicável
Imagem
Caixa de Combinação – Exibe uma lista de opções
Checkbox
Botão de Opção
Agrupador de Opções (utilizar com o botão de opção)
Controle de Guias - Abas
Botões de Navegação de Registros
Subformulário
80
Alterando a ordem de tabulação
Usando o botão Ordem de Tabulação, é
possível alterar a ordem dos campos
quando se usa a tecla “Tab” do teclado
81
Formatação Condicional
Na aba Formato, é possível formatar os
componentes de acordo com seu valor.
82
Respondendo a Eventos
Ao clicar sobre um componente, na aba
“Eventos” da folha de Propriedades, é
possível usar macros ou código em VBA
para executar ações.
83
Tipos de Respostas a Eventos
Construtor de Macros
Exibe o construtor de macros passo a passo
Construtor de Experessões
Utiliza campos e fórmulas do access
Construtor de código
Utiliza código em VBA para responder ao evento
84
Construtor de Macros
Para mais detalhes veja a seção de
macros desta apostila
85
Edição via VBA
86
RELATÓRIOS
87
Criação de Relatórios
Relatórios são um meio de gerar dados
para impressão ou exportação em PDF /
XPS.
Relatórios utilizando fontes de dados tais
como Tabelas ou Consultas
88
Modos de criação
Relatório Automático
Design de Relatório
Relatório em branco
Assistente de Relatório
89
Relatório Automático
Selecione uma tabela ou consulta
Clique em Criar / Relatório.
90
Modos de Exibição
Modo Design
Para edição e criação do relatório
Modo Exibição de Layout
Para manipulação dos componentes em tempo
real, com dados
Modo Visualização de Relatório
Gera o relatório final para
impressão/exportação
91
Seções do Relatório
Cabeçalho do Relatório
É exibido no início do relatório
Cabeçalho da Página
É exibido no início de cada página
Detalhe
É exibido para cada registro da tabela
Rodapé da Página
É exibido ao final de cada página
Rodapé do Relatório
É exibido no final do relatório (última página)
92
Fonte de Dados
Na Folha de Propriedades, selecionar a
opção “Relatório” e depois em “Dados”, a
Fonte de Registro.
93
Componentes
Da mesma forma que nos formulários, é
possível adicionar componentes para
exibição dos dados
Para exibir os dados, coloque o componente na
seção “Detalhe”
Os Rótulos ficam nas seções de Cabeçalho
Para cada componente é possível alterar as
suas propriedades.
94
Agrupar e Classificar
95
Agrupar e Classificar
Para fazer uma classificação (ordenar),
clique em Adicionar uma Classificação
Para agrupar, clique em Adicionar um
Grupo e escolha o campo.
Ao criar um grupo, é gerada automaticamente
uma seção de Cabeçalho para este Grupo
96
Filtros
Nas propriedades do Relatório, aba
“Dados”, é possível informar um Filtro.
O filtro é uma expressão
Para habilitar, selecione “Filtrar ao Carregar” =
SIM
97
Respondendo a Eventos
Assim como nos formulários, é possível
modificar o comportamento do relatório
através de Eventos
98
MACROS
99
Macros
São utilizadas para armazenar sequencias
de ações dentro do Access
Podem ser realizadas com o Construtor de
Macros, bem como por VBA – Visual Basic
for Applications.
100
Criando Macros Avulsas
Selecione Criar > Macro. O construtor de
Macros aparecerá.
O Catálogo de Ações mostra todos os
comandos possíveis para Macros.
101
Especificando Ações
As Ações são realizadas em sequencia. Se
uma ação precisar de valores, será
solicitado em campos específicos:
102
Condições
Para executar ações baseadas em uma
condição, utilize a Clausula Se:
104
Macros em Formulários
Para criar um evento de macro em um
formulário, selecione um evento e
selecione a opção “Construtor de Macros”
Coloque as Ações desejadas para o evento
Se for necessário informar parâmetros,
passe através do construtor de
expressões.
105
Macros em Formulários
106
Macros de Inicialização
Para que uma Macro seja executada
automaticamente toda vez que o banco
de dados for aberto, ao salvar dê a ela o
nome “Autoexec”
Este passo é importante para gerar banco
de dados auto-contidos (.accde)
107
Macro de Dados
As macros de dados são utilizadas para
responder a eventos específicos em
tabelas.
Os eventos possíveis são:
108
Macro de Dados
Para usar, selecione uma tabela. Em
seguida clique em Design > Criar Macro de
Dados.
109
Macro de Dados
Selecione o evento e em seguida
relacione o passo-a-passo a ser
executado.
110
Exemplo de Macro de Dados
112
Macros em VBA
Quando não é possível executar operações
através do construtor de macros, é possível
criar Módulos em VBA.
As macros em VBA podem ser criadas
Para responder a eventos de formulários e
relatórios
Encapsuladas em Módulos para uso posterior
Dentro de Módulos de Classe
Para uso das macros em VBA, é importante
conhecer a linguagem Visual Basic for
Applications
Obs.: Não é possível criar macro de dados em
VBA
113
Converter Macros em VBA
Macros podem ser convertidas em código VBA,
para posterior edição.
Para isso utilize a opção “Converter Macro em
Visual Basic”
114
Usar VBA nos Formulários
Em um componente ou formulário,
selecionar o evento desejado. Em seguida
escolha “Construtor de Código”. O
pseudocódigo é gerado automaticamente:
115
Usando o Editor do Visual Basic
O editor pode ser chamado a qualquer
momento pelo botão “Visual Basic” na
guia Criar.
O atalho Alt+F11 do teclado também faz essa
ação.
116
Exemplos de Código VBA
DoCmd.RunSQL “código SQL”
Executa o código SQL
DoCmd.OpenQUery “Nome da Consulta”
Executa uma consulta existente
Mudar propriedades do formulário
Formulario.Componente.Propiedade = ...
117
Exemplos de Código VBA
Ler o conteúdo de uma consulta
Dim dbs As Database
Dim rs As Recordset
Dim strSQL As String
Set dbs = CurrentDb
Set rs = dbs.OpenRecordset(strSQL)
118