Como automatizar tarefas de rotina no Excel com macros

O Excel tem uma capacidade poderosa, mas ao mesmo tempo muito raramente usada, de criar sequências automáticas de ações usando macros. Uma macro é uma saída ideal se você estiver lidando com o mesmo tipo de tarefa que é repetida muitas vezes. Por exemplo, processamento de dados ou formatação de documentos de acordo com um modelo padronizado. Nesse caso, você não precisa ter conhecimento de linguagens de programação.

Você já está curioso sobre o que é uma macro e como ela funciona? Então vá em frente com ousadia – então, passo a passo, faremos todo o processo de criação de uma macro com você.

O que é macro?

Uma macro no Microsoft Office (sim, essa funcionalidade funciona da mesma forma em muitos aplicativos do pacote Microsoft Office) é um código de programa em uma linguagem de programação Visual Basic para aplicativos (VBA) armazenado dentro do documento. Para deixar mais claro, um documento do Microsoft Office pode ser comparado a uma página HTML, então uma macro é um análogo do Javascript. O que o Javascript pode fazer com dados HTML em uma página da Web é muito semelhante ao que uma macro pode fazer com dados em um documento do Microsoft Office.

As macros podem fazer praticamente qualquer coisa que você queira em um documento. Aqui estão alguns deles (uma parte muito pequena):

  • Aplique estilos e formatação.
  • Execute várias operações com dados numéricos e de texto.
  • Use fontes de dados externas (arquivos de banco de dados, documentos de texto, etc.)
  • Crie um novo documento.
  • Faça todos os itens acima em qualquer combinação.

Criando uma macro – um exemplo prático

Por exemplo, vamos pegar o arquivo mais comum CSV. Esta é uma tabela simples de 10×20 preenchida com números de 0 a 100 com títulos para colunas e linhas. Nossa tarefa é transformar esse conjunto de dados em uma tabela formatada de forma apresentável e gerar totais em cada linha.

Como já mencionado, uma macro é um código escrito na linguagem de programação VBA. Mas no Excel, você pode criar um programa sem escrever uma linha de código, o que faremos agora.

Para criar uma macro, abra Ver (Tipo) > Macros (Macro) > Macro de registro (Gravação macro...)

Dê um nome à sua macro (sem espaços) e clique em OK.

A partir deste momento, TODAS as suas ações com o documento são registradas: alterações nas células, rolagem na tabela, até redimensionamento da janela.

O Excel sinaliza que o modo de gravação de macro está ativado em dois locais. Primeiro, no cardápio Macros (Macros) – em vez de uma string Macro de registro (Gravando uma macro...) apareceu a linha Parar Gravação (Pare de gravar).

Segundo, no canto inferior esquerdo da janela do Excel. Ícone Dê um basta (quadrado pequeno) indica que o modo de gravação de macro está ativado. Clicar nele interromperá a gravação. Por outro lado, quando o modo de gravação não está habilitado, há um ícone para habilitar a gravação de macro neste local. Clicar nele dará o mesmo resultado que ligar a gravação através do menu.

Agora que o modo de gravação de macro está ativado, vamos para nossa tarefa. Em primeiro lugar, vamos adicionar cabeçalhos para os dados de resumo.

Next, enter the formulas in the cells in accordance with the names of the headings (variants of the formulas for the English and versions of Excel are given, cell addresses are always Latin letters and numbers):

  • =SOMA(B2:K2) or =SOMA(B2:K2)
  • =MÉDIA(B2:K2) or =СРЗНАЧ(B2:K2)
  • =MIN(B2:K2) or =MIN(B2:K2)
  • =MÁX(B2:K2) or =MÁX(B2:K2)
  • =MEDIA(B2:K2) or =MEDIA(B2:K2)

Agora selecione as células com fórmulas e copie-as para todas as linhas da nossa tabela arrastando a alça de preenchimento automático.

Depois de concluir esta etapa, cada linha deverá ter os totais correspondentes.

A seguir, vamos resumir os resultados de toda a tabela, para isso fazemos mais algumas operações matemáticas:

Respectivamente:

  • =SOMA(L2:L21) or =SOMA(L2:L21)
  • =MÉDIA(B2:K21) or =СРЗНАЧ(B2:K21) – para calcular este valor, é necessário pegar exatamente os dados iniciais da tabela. Se você pegar a média das médias para linhas individuais, o resultado será diferente.
  • =MIN(N2:N21) or =MIN(N2:N21)
  • =MÁX(O2:O21) or =MÁX(O2:O21)
  • =MEDIA(B2:K21) or =MEDIA(B2:K21) – consideramos utilizar os dados iniciais da tabela, pelo motivo indicado acima.

Agora que terminamos os cálculos, vamos fazer uma formatação. Primeiro, vamos definir o mesmo formato de exibição de dados para todas as células. Selecione todas as células da planilha, para isso, use o atalho de teclado Ctrl + Aou clique no ícone Selecionar todos, que está localizado na interseção dos cabeçalhos de linha e coluna. Então clique Estilo de vírgula guia (Formato Delimitado) Início (Lar).

Em seguida, altere a aparência dos cabeçalhos de coluna e linha:

  • Estilo de fonte em negrito.
  • Alinhamento central.
  • Preenchimento de cor.

E, finalmente, vamos configurar o formato dos totais.

É assim que deve ficar no final:

Se tudo lhe convier, pare de gravar a macro.

Parabéns! Você acabou de gravar sua primeira macro no Excel.

Para usar a macro gerada, precisamos salvar o documento do Excel em um formato que suporte macros. Primeiro, precisamos deletar todos os dados da tabela que criamos, ou seja, torná-la um template vazio. O fato é que no futuro, trabalhando com este modelo, importaremos para ele os dados mais recentes e relevantes.

Para limpar todas as células dos dados, clique com o botão direito do mouse no ícone Selecionar todos, que está localizado na interseção dos cabeçalhos de linha e coluna e, no menu de contexto, selecione Apagar (Excluir).

Agora nossa planilha está completamente limpa de todos os dados, enquanto a macro permanece gravada. Precisamos salvar a pasta de trabalho como um modelo do Excel habilitado para macro que tenha a extensão XLTM.

Um ponto importante! Se você salvar o arquivo com a extensão XLTX, a macro não funcionará nela. A propósito, você pode salvar a pasta de trabalho como um modelo do Excel 97-2003, que tem o formato XLT, ele também suporta macros.

Quando o modelo é salvo, você pode fechar o Excel com segurança.

Executando uma macro no Excel

Antes de revelar todas as possibilidades da macro que você criou, acho correto prestar atenção em alguns pontos importantes sobre macros em geral:

  • Macros podem ser prejudiciais.
  • Leia o parágrafo anterior novamente.

O código VBA é muito poderoso. Em particular, ele pode realizar operações em arquivos fora do documento atual. Por exemplo, uma macro pode excluir ou modificar qualquer arquivo em uma pasta Meus documentos. Por esse motivo, execute e permita macros apenas de fontes nas quais você confia.

Para executar nossa macro de formatação de dados, abra o arquivo de modelo que criamos na primeira parte deste tutorial. Se você tiver configurações de segurança padrão, ao abrir um arquivo, aparecerá um aviso acima da tabela informando que as macros estão desabilitadas e um botão para habilitá-las. Como nós mesmos criamos o modelo e confiamos em nós mesmos, pressionamos o botão Habilitar Conteúdo (Incluir conteúdo).

A próxima etapa é importar o conjunto de dados atualizado mais recente do arquivo CSV (com base nesse arquivo, criamos nossa macro).

Quando você importa dados de um arquivo CSV, o Excel pode solicitar que você defina algumas configurações para transferir corretamente os dados para a tabela.

Quando a importação estiver concluída, vá para o menu Macros guia (Macros) Ver (Visualizar) e selecione um comando Ver Macros (Macro).

Na caixa de diálogo que se abre, veremos uma linha com o nome da nossa macro Formatar dados. Selecione e clique Execute (Executar).

Quando a macro começar a ser executada, você verá o cursor da tabela pulando de uma célula para outra. Após alguns segundos, as mesmas operações serão feitas com os dados como ao gravar uma macro. Quando tudo estiver pronto, a tabela deverá ficar igual à original que formatamos manualmente, apenas com dados diferentes nas células.

Vamos olhar por baixo do capô: como funciona uma macro?

Como mencionado mais de uma vez, uma macro é um código de programa em uma linguagem de programação. Visual Basic para aplicativos (VBA). Quando você ativa o modo de gravação de macro, o Excel realmente grava todas as ações que você faz na forma de instruções VBA. Simplificando, o Excel escreve o código para você.

Para ver este código de programa, você precisa no menu Macros guia (Macros) Ver (ver) clique Ver Macros (Macros) e na caixa de diálogo que se abre, clique em Editar (Mudar).

A janela é aberta. Visual Basic para aplicativos, no qual veremos o código do programa da macro que gravamos. Sim, você entendeu corretamente, aqui você pode alterar esse código e até criar uma nova macro. As ações que realizamos com a tabela nesta lição podem ser gravadas usando a gravação automática de macros no Excel. Mas macros mais complexas, com sequência e lógica de ação bem ajustadas, requerem programação manual.

Vamos adicionar mais um passo à nossa tarefa…

Imagine que nosso arquivo de dados original dados.csv é criado automaticamente por algum processo e é sempre armazenado em disco no mesmo local. Por exemplo, C:Datadata.csv – caminho para o arquivo com dados atualizados. O processo de abertura deste arquivo e importação de dados dele também pode ser registrado em uma macro:

  1. Abra o arquivo de modelo onde salvamos a macro - Formatar dados.
  2. Crie uma nova macro chamada Carregar dados.
  3. Durante a gravação de uma macro Carregar dados importar dados do arquivo dados.csv – como fizemos na parte anterior da lição.
  4. Quando a importação estiver concluída, pare de gravar a macro.
  5. Exclua todos os dados das células.
  6. Salve o arquivo como um modelo do Excel habilitado para macro (extensão XLTM).

Assim, ao executar este modelo, você obtém acesso a duas macros – uma carrega os dados, a outra os formata.

Se você quiser entrar em programação, você pode combinar as ações dessas duas macros em uma - simplesmente copiando o código de Carregar dados para o início do código Formatar dados.

Deixe um comentário