Quando se trata de planilhas, o Excel é a principal referência, embora não a única. E embora tenha uma enorme quantidade de recursos, poucas pessoas aproveitam ao máximo seu potencial. Porém, quando se trata de automatizar processos, é necessário dar um passo além das ferramentas básicas e mergulhar nos macros, que abrem um mundo de possibilidades, agilizando tarefas e simplificando o trabalho de forma simples.
O que são macros do Excel?
Macros são códigos que permitem realizar funções de forma automática, com a vantagem de poderem ser personalizados adicionando suas próprias características. Isso permite que várias funções deixem de ser feitas manualmente, automatizando funções básicas como formatar células, copiar valores e calcular totais, ainda mais complexos, agilizando processos onde dados repetitivos são inseridos constantemente.
A utilização de macros permite, graças a uma configuração personalizada, exportar dados, organizar informação para otimizar uma base de dados, limpar linhas ou colunas vazias, copiar e colar dados de outras fontes, criar gráficos fáceis de ver e também de imprimir.
Vantagens de usar macros
Os macros são um recurso muito poderoso, especialmente para quem usa o Excel com muita frequência. Entre suas principais vantagens, destacamos:
Depois que uma macro é criada, ela pode ser modificada para refinar ou ajustar aqueles que são executados.
Eles permitem reduzir a taxa de erro devido ao fato de que as ações a serem executadas são previamente registradas
Eles aceleram o processo, ajudando a reduzir o tempo de trabalho.
Como criar macros?
Habilitar guia “Programador”
No menu principal, vá até a guia “Arquivo” e clique em “Mais”. Na caixa de diálogo que se abre, selecione a opção “Personalizar Faixa de Opções”, ative a caixa “Agendador” que é exibida na aba “Guias Principais” e conclua a ação com “OK”.
Gravar macros
– A gravação de uma macro começa selecionando a guia “Programador” no menu principal.
– Em seguida, clique em “Salvar Macro” e uma caixa de diálogo é aberta, onde você deve atribuir um nome à macro e um caminho onde ela será salva.
– Opcionalmente, o programa permite determinar um comando de acesso abreviado e uma descrição.
– A partir desse momento, o Excel registrará todas as ações que você fizer em sua planilha até que você interrompa a gravação, o que se repetirá ao pressionar o atalho ou comando criado para aquela ação.
Enquanto a gravação estiver ativada, a macro registra cada ação realizada, de forma que os cliques nas células, os dados inseridos, fórmulas e formato, entre outras ações, serão gravadas.
Ao salvar uma planilha com macros é importante observar que, por padrão, arquivos com a extensão “.xlsx” não podem incluir macros, portanto, a opção “.xlsm” deve ser selecionada.
Usando o editor VBA
Para criar macros no Excel usando o Editor do Visual Basic (VBA), a primeira etapa é abrir uma planilha e inserir o atalho Alt + F11 (se você usa Mac, ele deve ser substituído por Fn + Shift + F11), que abrirá automaticamente a janela do Editor VBA.
É importante considerar que as macros são compostas por arquivos, também chamados de “módulos” com código VBA. Para inserir um módulo, basta clicar em “inserir” e a seguir em “módulo” para que apareça um espaço em branco onde foi inserido o código desejado.
No entanto, como codificamos uma macro para automatizar as ações que queremos?
Vamos usar como exemplo um banco de dados com informações sobre os trabalhadores de uma empresa, a área a que pertencem e o salário de cada um, onde precisamos movimentar os dados através das funções copiar e colar, que são algumas das mais comuns e frequentes operações no Excel.
Copiar, recortar e colar são ações simples e podem ser feitas manualmente. Porém, ao fazer isso repetidamente, é importante ter um recurso que possa fazer isso automaticamente, pois vai economizar muito tempo. Com uma macro, esse trabalho poderia ser feito de forma automatizada e para isso apresentamos como fazê-lo:
Copiar células com VBA
Se precisarmos copiar os dados das colunas A, B e C de nosso exemplo, usando VBA para traduzi-los para as colunas D, E e F, considere o código abaixo:
Intervalo (“Inserir intervalo”). Cópia de.
Em nosso exemplo, seria:
Intervalo (“A: C”). Copiar ← copiar coluna A para C
Intervalo (“A1: C100”). Copiar ← copia o intervalo A1: C100
Além disso, você deve sempre incluir as sub-linhas Sub Nameofmacro () e End na parte superior e inferior do código. No Excel, ao digitar o termo “Sub” no início do código seguido pelo nome da macro, o sub-final aparecerá automaticamente na linha inferior.
Colar células com VBA
Se você precisa colar células, as sugestões mais frequentes são as seguintes:
Intervalo (“A célula / área onde você deseja colar”). Pastespecial ← para colar regularmente (fórmulas e formatação)
Intervalo (“A célula / área onde você deseja colar”). PastespecialxlPasteValues ← para colar apenas valores
Recortar células usando VBA
Seguindo a lógica usada para copiar, podemos alterar a localização dos dados usando o recurso de corte. Para fazer isso, precisamos:
Intervalo (“Insira o intervalo aqui”). Cortar
Intervalo (“Insira onde deseja colar”). Selecione
ActiveSheet.Paste
Adicionar loops ao VBA
Além dessas três funções básicas, um trabalhador pode enfrentar a necessidade de executar repetidamente uma ação mais longa ou complexa em poucos segundos.
Nesses casos, surge a opção de criar um loop para, por exemplo, corrigir uma planilha onde os dados estão fora de ordem e corrigi-los manualmente pode levar muito tempo.
Como fazê-lo? Basta gerar o seguinte código:
Sub loops ()
Intervalo (“A1”) .Selecione
Para i = 1 a 500
ActiveCell.Offset (3, 0) .Selecionar
Selection.Delete Shift: = x1ToLeft
Next
End Sub
– A indicação “Range (“A1”) .Select” determina que o loop começa na célula superior esquerda da planilha.
– A Linha “For i = 1 To 1000” serve para determinar o número de vezes que o loop pode ser executado, sendo 1000 um exemplo para esta simulação, mas pode ser adaptado de acordo com a quantidade de dados que a planilha que vai ser trabalhada tenha.
– As linhas “ActiveCell.Offset (3, 0) .Select” e “Selection.Delete Shift: = x1ToLeft” combinam a ação de reconhecer uma célula ativa, dizendo ao Excel para mover um número de linhas para baixo, neste caso a cada 3 linhas, e selecione-o, tornando-o uma nova célula ativa. A próxima linha de código informa ao Excel o que fazer com essa célula recém-selecionada, neste caso, exclua-a e mova as células à direita para a esquerda.
– Finalmente, “Next” informa ao Excel que não há mais ações dentro do loop.
Sentenças “IF”: um pouco de lógica para a planilha
Uma planilha também pode incorporar ações que implicam em uma decisão lógica. Para isso, como a função IF do Excel, podemos introduzir a lógica “se-isso-então-aquilo” em nossos códigos, que são conhecidos como declarações “IF”.
Se usarmos como exemplo um banco de dados que foi importado com erros, apresentando dados a cada 3 linhas deslocadas uma ou duas colunas para a direita, podemos adicionar uma instrução “IF” para corrigir automaticamente este problema. Para isso, você deve fazer o seguinte:
– Desenvolvemos um loop seguindo o exemplo anterior, incorporando a instrução “IF” que determinará a ação que desejamos realizar.
Sub loopsandifstatements ()
Intervalo (“A1”) .Selecione
Sub loopsandifstatements ()
Range (“A1”) .Select
For i = 1 To 500
ActiveCell.Offset (3, 0) .Select
If ActiveCell. Offset (0, 1) = “” Then
Selection.Delete Shift:=x1ToLeft
Selection.Delete Shift:=x1ToLeft
Else
Selection.Delete Shift:=x1ToLeft
End If
Next
End Sub
– Na primeira parte da declaração “IF”, é indicado que, se a célula à direita da célula ativa estiver em branco, uma ação deve ser realizada (If Activecell.Offset (0,1) = “” Then). Neste caso, mova-o para a esquerda (Selection.Delete Shift: = x1ToLeft). Vemos que o código é repetido em nosso exemplo porque a instrução é mover duas células para a esquerda de sua linha.
– Então, com o comando “Else” associamos uma nova instrução (Selection.Delete Shift: = x1ToLeft) para quando precisarmos que o deslocamento seja de apenas uma célula.
A instrução IF deve sempre terminar com End If para dizer ao Excel para terminar de executá-la.
Baixe o aplicativo DataScope e comece agora!
DataScope é a ferramenta ideal para eliminar o uso de papel, economizar tempo e coletar dados de campo com eficiência. Permite às empresas agilizar, organizar e avaliar o trabalho de campo graças aos seus formulários online, que fornecem indicadores em tempo real, 100% adaptáveis a qualquer área.
Com DataScope, sua equipe pode responder a formulários móveis personalizados de seus telefones ou tablets, online ou offline, através do aplicativo.