[A BÍBLIA DO VBA NO ACCESS]: MACROS E PROGRAMAÇÃO VBA NO ACCESS - CURSO COMPLETO

Páginas: 1164 | Autor: Júlio Battisti | 50% de Desconto e 21 Super Bônus

Você está em: PrincipalArtigosAccess 2007 Avançado › Capítulo 1 : 15
Quer receber novidades e e-books gratuitos?
›››
« Anterior Δ Página principal ¤ Índice Próxima »

Curso Grátis - Access 2007 Avançado, Macros e Programação VBA
Autor: Júlio Battisti
Lição 15 - Capítulo 01 - Visual Basic for Applications - VBA - Parte 2

A utilização de Macros em conjunto com Formulários e Relatórios nos oferece um grande número de opções na busca por soluções para os problemas mais comuns, no uso do Microsoft Access 2007. Porém existem situações em que, por mais que saibamos utilizar todos os recursos, a utilização de macros não é capaz de solucionar o problema proposto. Nestas situações temos que utilizar programação.

A linguagem de programação utilizada pelo Microsoft Access 2007 é o VBA - Visual Basic for Applications. Conforme veremos a partir de agora esta é uma linguagem, ao mesmo tempo, extremamente simples e poderosa. Com o VBA temos acesso completo a todos os elementos de todos os objetos de um banco de dados. Com código VBA podemos criar uma rotina para validação do dígito verificador de um campo CPF, CNPJ ou de um campo NúmeroDoProcesso; podemos criar código que percorre todas as linhas de uma tabela, alterando os valores de um ou mais campos, com base em uma ou mais condições, podemos automatizar rotinas para importação e exportação de dados e, inclusive executar macros.

No decorrer deste tópico você aprederá os fundamentos básicos da linguagem VBA. Também será resolvido alguns problemas práticos para ver o código VBA em funcionamento.Você também aprenderá a utilizar o ambiente de desenvilvimento do Microsoft Access 2007. Verá sobre Objetos, Propriedades, Métodos e Coleções.

Nesta introdução a linguagem VBA, trataremos dos seguintes assuntos:

1. Programação com o Microsoft Access 2007.
2. Introdução a linguagem VBA - Visual Basic For Applications.
3. Aprendendo VBA:

  • Uma visão geral.
  • O Ambiente de Programação.
  • Anatomia dos Módulos do VBA.
  • Tipos de dados.
  • Variáveis.
  • Escopo de Variáveis.
  • Estruturas de controle, etc.

4. Exercícios e Exemplos.
5. Funções e procedimentos.
6. O exemplo do cálculo do DV do CPF e do CNPJ.
7. Funções de Data e Hora.
 8. O Exemplo da função MêsPorExtenso().

Programação com o Microsoft Access 2007 - Por que utilizar?

O VBA nos oferece possibilidades de controle e personalização para criar aplicativos que vão além das ações de macro.
O VBA é uma linguagem de programação interna do Microsoft Access 2007 (na prática é a linguagem de programação para todos os aplicativos do Office: Access, Word, Excel e Power Point). Usamos o VBA pelo mesmo motivo que utilizamos macros - para automatizar tarefas e rotinas repetitivas, envolvendo os diversos elementos do banco de dados (tabelas, consultas, formulários, relatórios, folhas de dados, macros e módulos). No entanto, o VBA oferece maior poder e controle mais detalhado do que as ações de macro.

Na prática as ações de macro duplicam as operações que podemos realizar manualmente, usando menus e teclas de atalho. O VBA vai além da simples automação de seqüências de ações. Ele oferece um conjunto de ferramentas que lhe permite criar aplicações personalizadas com base nos elementos do Microsoft Access 2007 e nos objetos dos bancos de dados do Access. Por exemplo, podemos criar uma rotina em VBA em um banco de dados chamado local.mdb. Esta rotina pode acessar dados em um segundo banco de dados que está na rede, por exemplo, pagamentos.mdb. A mesma rotina além de acessar os dados pode fazer cálculos, consolidações, gerar os resultados no formato de uma planilha do Excel e salvar a planilha na rede. Este é apenas um pequeno exemplo do que pode ser feito como o VBA.

Vantagens em utilizarmos o VBA:

Já utilizamos macros e aprendemos a automatizar algumas tarefas como a aplicação de filtros em formulários, sincronização de formulários, etc. O VBA apresenta, em relação as macros, as seguintes vantagens:

  • Acessando um ou mais conjuntos de registros: Com ações de macros estamos limitados a operar com o registro ou com o conjunto de registros atualmente sendo exibido em um formulário, relatório ou consulta. O VBA lhe permite trabalhar com qualquer conjunto de registros no banco de dados ativo (arquivo .mdb que você está trabalhando) ou em outras banco de dados.
  • Manipulação de objetos: O VBA oferece métodos de criação e modificação dos objetos de um banco de dados do Microsoft Access 2007. Chamamos de objeto qualquer elemento do Microsoft Access 2007, por exemplo: uma tabela, uma consulta, um formulário, relatório, etc. Por exemplo, poderíamos usar o VBA para acessar um conjunto determinado de registros, através da execução de um comando SQL para a geração de um objeto do tipo RecordSet. Você aprenderá o objeto RecordSet detalhadamente no decorrer deste curso.
  • Criação de funções definidas pelo usuário: Este é um dos maiores benefícios do VBA. Podemos criar funções que executam cálculos repetitivos. Por exemplo, vários formulários podem conter um campo CPF ou CNPJ. Poderíamos criar, em cada formulário, o código necessário para a validação do DV do CPF ou CNPJ. Porém este procedimento não é o mais indicado, pois além da duplicação do código necessário a validação, teríamos dificuldades para fazer atualizações neste código, pois cada alteração necessária terá que ser feita em vários locais. O ideal é criarmos uma função para validação do DV (uma função deve ser criada dentro de um módulo. Trataremos disso mais adiante.). Em cada formulário, onde for necessário, chamamos a função, passando o valor do campo CPF como parâmetro. A função calcula o DV e retorna o resultado para o formulário. Desta maneira precisamos criar uma única função. Quando forem necessárias alterações, basta alterar a função (em um único local, ou seja, no módulo onde a função foi criada) e todos os formulários passarão a utilizar a versão atualizada da função.
  • Definição de condições e controle de fluxo: O VBA oferece uma variedade de comandos e estruturas para a realização de testes condicionais e para a repetição de um conjunto de comandos. Aprenderemos a utilizar todas as estruturas de controle de fluxo e testes condicionais, mais adiante.
  • Realização de cálculos complexos e solução de problemas que envolvem uma lógica complexa: Com macros é impossível a realização de cálculas mais complexos. Também não é possível a resolução de problemas que envolvem uma lógica complexa, como por exemplo cálculo do imposto de renda, recolhimentos de tributos, etc.

Introdução a linguagem VBA - Visual Basic For Applications.

O VBA é derivado do Visual Basic. O Visual Basic é um ambiente de desenvolvimento completo, onde podemos criar programas para o ambiente Windows. Um programa como o Programa Gerador - Pessoa Física pode ser criado utilizando-se o Visual Basic. Um aplicativo como o SIEF também poderia ser criado utilizando o Visual Basic. Já o VBA é uma linguagem bastante poderosa, embora não seja tão poderosa quanto o Visual Basic, para criação de aplicativos e automação de tarefas, baseados nos aplicativos do Microsoft Office 2007: Access, Word, Excel, Power Point e Outlook.

Onde podemos utilizar o VBA?

Existem, basicamente, duas situações/locais diferentes onde podemos utilizar o VBA:

  • Como resposta a um evento: Conforme descrito anteriormente, o modelo de programação do ambiente Windows é baseado em Eventos. Um Evento é uma ação do usuário ao utilizar o teclado ou o mouse. Por exemplo, quando o usuário clica em um botão de comando é gerado o evento "Ao clicar" associado com este botão. Quando o usuário altera o valor em um campo de dados e pressiona a tecla TAB para ir para o próximo campo são gerados dois eventos associados com o campo que foi atualizado: "Após atualizar" e "Ao perder o foco". Quando o usuário dá um clique duplo em um determinado elemento, é disparado o evento "Ao clicar duas vezes", e assim por diante. Por padrão nenhuma ação é programada para responder aos eventos que são disparados. Conforme já vimos anteriormente é possível criar macros que serão executadas em resposta a um determinado evento. Podemos utilizar o VBA para criar um procedimento (um procedimento é formado por um ou mais comandos) que será executado em resposta ao evento. Por exemplo, podemos criar um procedimento para validar um número de CPF (calcular o DV do CPF). Este procedimento pode ser configurado para ser executado em resposta ao evento Após atualizar do campo CPF. O código criado para ser executado em resposta a um evento, é gravada juntamente com o formulário (ou relatório), onde está o elemento que dispara o evento.
  • Criação de funções e procedimentos em módulos separados: Se quisermos criar procedimentos ou funções que não estejam ligados a um evento específico em um formulário ou relatório (podendo, porém serem chamados em diversos eventos diferentes, conforme aprenderemos mais adiante), podemos criar funções gravadas em Módulos do Access. Um Módulo é um objeto do Access cuja única finalidade é armazenar código de procedimentos e funções do VBA. Quando um procedimento ou função é definido e armazenado em um módulo, podemos usá-lo em qualquer expressão, como se fosse uma função interna do Microsoft Access 2007. Nós criaremos, mais adiante, a título de exemplo, uma função chamada MêsPorExtenso. Esta função receberá um valor numérico entre 1 e 12 e irá retornar o nome do mês correspondente, por extenso.

Agora que já falei bastante e fiz uma boa prapaganda das vantagens em se utilizar o VBA, é hora de aprendermos os fundamentos básicos desta linguagem de programação.

Aprendendo VBA:

Um procedimento, função ou módulo do VBA é uma seqüência de comandos que são executados para a realização de uma ou mais tarefas. Por exemplo, posso escrever um grupo de comandos que acessa os dados da tabela pedidos e aumenta o valor de um determinado campo de acordo com determinadas condições.Observe o comando a seguir:

Me![NúmeroDoPedido].SetFocus

Este é um comando que, simplesmente, coloca o cursor no campo NúmeroDoPedido, no formulário atual. Não se preocupe em entender este comando, agora.Todo comando em VBA deve seguir algumas regras de sintaxe. A sintaxe tem a ver com a maneira como o comando é escrito. Por exemplo, se você for utilizar a função Day() em um comando e ao invés de Day(), utilizar Dai(), você terá cometido um erro de sintaxe e o comando não poderá ser executado. Os erros de sintaxe são os mais fáceis de serem identificados e corrigidos.

Os comandos do VBA são divididos, basicamente, em três tipos:

Comandos básicos do VBA: São aqueles comandos que estão presentes em toda e qualquer lingüagem que se preze. São comandos para declaração de variáveis, operadores aritméticos e lógicos, estruturas de controle e operadores para a realização de testes condicionais. Por exemplo, qual a linguagem que não possui uma função IF para a realização de testes condicionais?
Funções internas do Microsoft Access 2007: Existem centenas de funções prontas, fornecidas pelo Microsoft Access 2007 e que podem ser utilizadas em qualquer comando do VBA. Por exemplo, para armazenarmos em uma variável x, o valor numérico do ano da data do sistema, poderíamos utilizar o seguinte comando: 

x = Year (Date()).

Durante a primeira semana utilizamos uma série destas funções, tais como: Esquerda(), Direita(), Meio(), Ano(), Dia(), Mês, etc.

IMPORTANTE: Ao utilizar funções em comandos do VBA devemos, sempre, utilizar a função em inglês. Por exemplo, ao invés de Ano() devemos utilizar Year(); ao invés de Mês() devemos utilizar Month() e assim por diante.

Objetos da hierarquia de objetos do Microsoft Office: Um objeto é uma entidade que possui propriedades (que descrevem as características do objeto) e métodos (que descrevem os comportamentos do objeto). Cada aplicativo do Microsoft Office 2007 disponibiliza uma hierarquia de objetos bem definida. Estes objetos podem ser acessados através de programação. Podemos utilizar os métodos dos objetos para realizar determinadas ações sobre o objeto e suas propriedades para obter informações sobre suas características. Esta hierarquia de objetos é que torna o VBA tão poderoso. É graças a hierarquia de objetos do Office que, de dentro de um banco de dados do Access, por exemplo, podemos acessar dados de uma planilha do Excel, gravada em um drive de rede e combinar tais dados com dados obtidos a partir de um banco de dados, por exemplo, do Dbase (.dbf), gravado na máquina local. Falaremos mais sobre objetos adiante. Agora, apenas a título de exemplo, alguns comandos do VBA que utilizam um objeto do tipo RecordSet para descobrir o número de registros da tabela Pedidos:

Quando o Microsoft Access 2007 executa estes comandos é emitida a seguinte mensagem:
NÚMERO DE REGISTROS DA TABELA PEDIDOS: 1079Importante: Não se preocupe em entender os comandos utilizados no exemplo anterior. Vamos estudar em detalhes, uma série de objetos, inclusive os objetos Database e RecordSet, utilizados no exemplo anterior.

« Anterior Δ Página principal ¤ Índice Próxima »

ESTA LIÇÃO FAZ PARTE DO SEGUINTE LIVRO DO JÚLIO BATTISTI:

 

Se você não quiser aguardar até que todas as lições sejam publicadas aqui no site (previsão de conclusão para o final de 2017), você pode ter acesso a todas as lições comprando o livro a seguir e ainda receber, de bônus, mais de 37 horas de Vídeo Aulas de Access.

 

Aprenda com Júlio Battisti: Access 2007 Avançado,

Macros e Introdução à Programação VBA

  • Crie campos calculados, critérios avançados e Consultas Parametrizadas.

  • Aprenda os comandos SQL em detalhes.

  • Criação e Utilização de Macros.

  • Configurações de Segurança do Banco de dados.

  • Exemplos práticos explicados passo a passo.

  • Introdução à programação VBA com exemplos.

  • BôNUS: 37,5 horas de Vídeo Aulas de Excel e Acc.ess +  DVD com 3167 E-books + 2400 Planilhas Profissionais Editáveis do Excel de bônus.

Aprenda com Júlio Battisti: Access 2007 Avançado, Macros e Introdução à Programação VBA

Aprenda com Júlio Battisti: Access 2007 Avançado, Macros e Introdução à Programação VBA

Na compra deste livro você recebe, via Download, todos os Bônus a Seguir:

  • Bônus 01: Vídeo Aula: Access 2007 - Básico e Prático - 5:30 horas

  • Bônus 02: Vídeo Aula: Access 2007 - Consultas - 4:30 horas

  • Bônus 03: Vídeo Aula: Access 2007 - Intermediário - 5:00 horas

  • Bônus 04: Vídeo Aula: Access 2007 - Formulários e Macros - 6:00 horas

  • Bônus 05: Vídeo Aula: Access 2007 - Avançado e VBA - 11:30 horas

  • Bônus 06: Pacote com 3167 E-books com Cursos de Informática.


Livros e Vídeo Aulas sobre Banco de Dados:

A Bíblia de Banco de Dados SQL e o Modelo Relacional de Dados

Apre.nda com Júlio Battisti: Acc.ess 2010 Avançado, Macros e Programação VBA - Passo a Passo

Apre.nda com Júlio Battisti: Banco de Dados e Acc.ess 2010 - Através de Exemplos Práticos - Passo a Passo

[186 Vídeo Aulas em 3 DVDs - Frete Grátis]: Linguagem SQL + Banco de Dados + Análise e Modelagem de Banco de Dados - Curso Completo - 186 Vídeo Aulas - 3 DVDs

  [Vídeo Aula - Frete Grátis:] Oracle PL SQL Procedures Functions Triggers Forms Reports - Curso Completo - 182 Vídeo Aulas - 3 DVDs

Best Sellers de Access do Julio Battisti

Todos com Vídeo Aulas, E-books ou Exemplos de Brinde!

Programação VBA no Access 2010 - Exemplos Práticos - Passo a Passo

 Aprenda com Júlio Battisti: Access 2010 Básico em 140 Lições - Através de Exemplos Práticos

 

Autor: Júlio Battisti | Páginas: 1164 | Editora: Instituto Alpha

 

[Livro]: Aprenda com Júlio Battisti: Access 2010 Básico em 140 Lições - Através de Exemplos Práticos

Access 2010 Avançado, Macros e Programação VBA - Passo a Passo

Livro: Aprenda com Júlio Battisti: Access 2010 Avançado, Análise de Dados, Tabelas Dinâmicas, Funções Avançadas, Macros e Programação VBA - Passo a Passo

 

Autor: Júlio Battisti | Páginas: 828 | Editora: Instituto Alpha

 

Livro: Aprenda com Júlio Battisti: Access 2010 Avançado, Análise de Dados, Tabelas Dinâmicas, Funções Avançadas, Macros e Programação VBA - Passo a Passo

Todos os livros com dezenas de horas de vídeo aulas de bônus, preço especial (alguns com 50% de desconto). Aproveite. São poucas unidades de cada livro e por tempo limitado.

Dúvidas?

Utilize a área de comentários a seguir.

Me ajude a divulgar este conteúdo gratuito!

Use a área de comentários a seguir, diga o que achou desta lição, o que está achando do curso.
Compartilhe no Facebook, no Google+, Twitter e Pinterest.

Indique para seus amigos. Quanto mais comentários forem feitos, mais lições serão publicadas.

Quer receber novidades e e-books gratuitos?
›››

Novidades e E-books grátis

Fique por dentro das novidades, lançamento de livros, cursos, e-books e vídeo-aulas, e receba ofertas de e-books e vídeo-aulas gratuitas para download.



Institucional

  • Quem somos
  • Garantia de Entrega
  • Formas de Pagamento
  • Contato
  • O Autor
  • Endereço

  • Júlio Battisti Livros e Cursos Ltda
  • CNPJ: 08.916.484/0001-25
  • Rua Vereador Ivo Cláudio Weigel, 537 Universitário
  • Santa Cruz do Sul/RS
  • CEP 96816-208
  • Todos os direitos reservados, Júlio Battisti 2001-2017 ®

    [LIVRO]: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2010 - PASSO-A-PASSO

    APRENDA COM JULIO BATTISTI - 1124 PÁGINAS: CLIQUE AQUI