Apostila de Excel voltada a administração

Apostila de Excel voltada a administração

(Parte 1 de 3)

USO DE MACROS NO EXCEL

  1. Introdução

Existem situações onde não conseguimos resolver um problema proposto, simplesmente utilizando os comandos e fórmulas do Excel. Nessas situações temos que fazer o uso de recursos como Macros e Programação. A linguagem de programação do Excel é o VBA - Visual Basic for Applications. O VBA é a linguagem de programação para todos os aplicativos do Microsoft Office: Word, Excel, Access e Power Point. 

Veremos a seguir o que é uma Macro, para que serve, quando devemos usar Macros, como criar e alterar Macros. Em seguida aprenderemos os fundamentos básicos da linguagem VBA. 

Veremos os conceitos teóricos da linguagem VBA, exemplos de aplicação do VBA para a solução de problemas práticos, os quais não poderiam ser solucionados sem o uso de programação. 

O que são Macros?

Caso você execute uma tarefa várias vezes no Microsoft Excel, é possível automatizá-la com uma macro. Uma macro é uma seqüência de comandos e funções armazenados em um módulo do Visual Basic for Applications - VBA e pode ser executada sempre que você precisar executar a tarefa. Quando você grava uma macro, o Excel armazena informações sobre cada etapa realizada à medida que você executa uma seqüência de comandos. Em seguida, você executa a macro para repetir, ou "reproduzir", os comandos. 

Por exemplo, vamos supor que, seguidamente, você precisa formatar uma célula com Negrito, cor de fonte Vermelha, Itálico, Fonte Verdana de Tamanho 13 com quebra automática de linha. Ao invés de ter que executar todos os comandos de formatação em cada célula, você pode criar uma Macro que aplica todos os comandos de formatação. Após criada a Macro, cada vez que você tiver que aplicar o conjunto de comandos de formatação, basta executar a Macro, o que normalmente é feito através da associação de uma combinação de teclas com a Macro, como por exemplo Ctrl+L. No nosso exemplo, cada vez que você quiser formatar uma célula com os formatos descritos, basta clicar na célula e pressionar Ctrl+L. Bem mais fácil do que aplicar cada comando individualmente. 

Você pode Gravar uma macro para realizar uma tarefa em uma etapa

Antes de gravar uma macro, planeje as etapas e os comandos que você deseja que a macro execute. Se cometer um erro durante a gravação da macro, as correções feitas também são gravadas. Ao gravar macros, o VBA armazena cada macro em um novo módulo anexado a uma pasta de trabalho. 

Por exemplo, se você insere com freqüência seqüências de caracteres de texto extensas nas células, você pode gravar uma macro para formatar essas células de maneira que o texto retorne automaticamente. Selecione a célula em que deseja inserir o retorno automático de texto e inicie a gravação. Clique em Células no menu Formatar, clique na guia Alinhamento, marque a caixa de seleção Retorno automático de texto, clique em OK e, em seguida, clique em Parar gravação .

Como Tornar uma macro fácil de ser executada

Você pode executar uma macro escolhendo-a de uma lista na caixa de diálogo Macro. Para que uma macro seja executada sempre que você clicar em um botão específico ou pressionar determinada combinação de teclas, você pode atribuir a macro a um botão da barra de ferramentas, um atalho no teclado ou um objeto gráfico em uma planilha.

Como Exibir e alterar macros

Depois de gravar uma macro, você poderá exibir o código da macro com o Editor do VBA para corrigir erros ou alterar a função da macro. O Editor do VBA é um programa criado para facilitar a escrita e a edição de código de macro para principiantes e fornece bastante Ajuda on-line. Você não precisa aprender a programar ou a usar a linguagem do Visual Basic para fazer alterações simples nas suas macros.

Na Figura a seguir temos um exemplo de código associado com uma Macro. Esse é um exemplo de código VBA: 

Como Gerenciar macros com o Editor do VBA

Você pode editar macros, copiar macros de um módulo para outro, copiar macros entre pastas de trabalho diferentes, renomear os módulos que armazenam as macros ou renomear as macros. Por exemplo, se você quiser que a macro de retorno automático de texto, do exemplo anterior, também deixe o texto em negrito, você poderá gravar outra macro para aplicar negrito a uma célula e copiar as instruções dessa macro para a macro de retorno automático de texto. 

Segurança da macro: O Microsoft Excel fornece proteção contra vírus que podem ser transmitidos através das macros. Se você compartilha macros com outros usuários, você pode certificá-las com uma assinatura digital de forma que os outros usuários possam verificar que as macros são de origem confiável. Sempre que você abrir uma pasta de trabalho que contenha macros, poderá verificar a origem das macros antes de ativá-las.

Programação no Excel - A linguagem VBA

As Macros são uma excelente solução quando queremos automatizar uma tarefa que é realizada através de uma série de cliques de mouse ou digitações no teclado. Porém existem situações mais complexas, que envolvem cálculos ou uma lógica mais apurada, onde não é possível encontrar a solução do problema, simplesmente usando os comandos ou fórmulas prontas do Excel. 

Nessas situações temos que fazer uso de programação. Um programa (ou módulo como é chamado no Excel) é uma seqüência de comandos VBA, onde cada comando executa um passo específico, necessário à resolução do problema. 

Nota: Para um melhor aproveitamento e entendimento do VBA é importante que o leitor já tenha uma noção básica de Lógica de Programação. Você encontra um excelente curso de Lógica de Programação no seguinte endereço: www.webaula.com.br . O curso é gratuito, é necessário apenas fazer um cadastro no site, cadastro esse que também é gratuito. 

Por exemplo, vamos supor que você precise fazer a verificação do CPF que é digitado em uma célula. O cálculo do DV do CPF, o qual é de domínio público, envolve uma série de operações aritméticas. Para implementar uma função que faz a verificação do DV do CPF, você terá que fazer uso de programação.

  1. O que são Macros?

Conforme descrito anteriormente, uma macro é uma seqüência de comandos (cliques de mouse ou toques de teclado) que são gravados em um Módulo VBA e podem ser executados, sempre que necessário. A grande vantagem de gravarmos uma seqüência de comandos é que poderemos utilizá-la sempre que necessário. Para isso basta executar a macro na qual foi gravada a seqüência de comandos. 

As Macros são uma excelente opção para automatizar tarefas repetitivas. Com o uso de Macros temos um ganho de produtividade considerável, ao evitar que tenhamos que executar manualmente, os diversos passos de uma tarefa, passos estes que podem ser automatizados através do uso de uma macro. 

Existem duas maneiras distintas para a criação de uma macro: 

  • Podemos usar o gravador de Macros: Nesse caso o Excel grava cada uma das ações que farão parte da Macro e transforma essas ações nos comandos VBA equivalentes. Quando a macro for executada, os comandos VBA é que serão efetivamente executados. Cada comando VBA corresponde a uma ação efetiva da macro.

  • Criar a Macro usando VBA: A partir do momento em que você domina a linguagem VBA, poderá criar a macro digitando os comandos VBA necessários. Isso é feito usando o Editor de VBA.

Melhor do que definições é a prática!!

Melhor do que uma série de definições é ver uma Macro em ação. Vamos a um exemplo simples, onde criaremos uma Macro. Em seguida vamos executá-la .

Exemplo 1: Criar uma macro usando o Gravador de Macros. A macro deverá formatar a célula atual com Negrito, cor de fonte Vermelha, com fundo cinza. Gravar a macro com o nome de FormataVermCinza. 

1. Abra o Excel.

2. Abra a Planilha Exercicio01.xls.

3. Clique na célula A4.

4. Agora vamos iniciar a gravação da Macro.

5. Selecione o comando Ferramentas -> Macro -> Gravar nova macro.

6. Será exibida a janela Gravar Macro.

7. No campo Nome da macro digite: FormataVermCinza.

8. No campo Tecla de atalho digite L. Observe que o Excel troca para Ctrl+Shift+L. Isso acontece porque a combinação Ctrl+L já deve estar associada com algum comando do Excel. Com isso estamos associando a combinação Ctrl+Shift+L com a macro FormataVermCinza, ou seja, cada vez que quisermos executar essa macro basta pressionar Ctrl+Shift+L.

9. O campo descrição é simplesmente uma descrição da funcionalidade da macro. Digite o texto indicado na figura abaixo: 

Definição do nome e da tecla de atalho da Macro.

10. Clique em OK. A gravação da Macro será iniciada. Todos os comandos que você executar, durante a gravação da Macro, farão parte da Macro. 

11. Uma nova barra () é exibida na planilha do Excel. Essa barra é utilizada para parar a gravação da Macro. Agora devemos escolher os comandos que farão parte da macro. Após ter executado os comandos que farão parte da macro, basta clicar no botão ( ) para encerrar a gravação da Macro.

12. Clique no botão ( ) para aplicar Negrito.

13. Na lista de Cores da fonte ( ) selecione Vermelho.

14. Na lista de Cores de fundo ( ) selecione Cinza.

15. Clique no botão ( ) para encerrar a gravação da Macro.

16. Agora a macro FormataVermCinza foi criada e podemos utilizá-la sempre que necessário. 

Para executar a macro FormataVermCinza faça o seguinte:

1. Clique na Célula B7.

2. Pressione Ctrl+Shift+L.

3. A macro FormataVermCinza é executada e as formatações definidas pela macro (Negrito, fonte Vermelha e fundo Cinza) são automaticamente aplicadas na Célula B7. Veja que com um simples comando de teclado, executo uma série de comandos (nesse exemplo: três comandos de formatação). Esse exemplo nos dá uma pequena idéia do poder e facilidade do uso das macros.

4. Também é possível executar a macro usando o comando Ferramentas -> Macro -> Macros.

5. Clique na célula B5.

6. Selecione o comando Ferramentas -> Macro -> Macros.

7. Será exibida a janela Macro, onde são listadas todas as macros existentes na pasta de trabalho atual (no arquivo carregado no Excel), conforme indicado na figura a seguir: 

A janela Macro.

8. Clique na Macro FormataVermCinza para selecioná-la.

9. Clique no botão Executar.

10. A Macro será executada e as respectivas formatações serão aplicadas à célula B5.

11. A sua planilha deve estar conforme indicado na figura abaixo: 

Formatações aplicadas com a macro FormataVermCinza.

  1. Conhecendo do que é feita uma Macro

No item anterior podemos ver uma macro em ação. Criamos uma macro chamada FormataVermCinza. Essa macro é composta por três comandos de formatação. Cada vez que a macro é executada, os três comandos de formatação são novamente executados e aplicados à célula onde está o cursor. Até aqui tudo bem. Nenhuma novidade. A pergunta que pode surgir é: 

Como é que o Excel faz isso?

(Parte 1 de 3)

Comentários