10 exemplos de macros essenciais no Excel

5
2561

Para aproveitar toda a potência que o Excel possui, é indispensável a utilização de macros. Macro poder ser definida como uma serie de comandos(em sequencia), que podem ser cliques, toques no teclado ou até mesmo pequenas linhas de códigos com funções mais avançadas. Essas sequencias são gravadas em um modulo VBA e são executados sempre que for necessário.

O principal beneficio de uma macro é o ganho de tempo que ela proporciona, afinal ela automatiza algo que teria que ser feito de forma manual em diversas etapas. Muito utilizadas quando é preciso executar varias vezes o mesmo conjunto de tarefas.

Curso de VBA em Excel

Uma macro pode ser criada de duas formas distintas:

  • Usando o gravador de Macros:  Nesse procedimento o Excel armazena cada ação que fará parte da Macro, depois o gravador de macro converte essas ações em comandos VBA(Visual Basic for Applications).
  • Usando VBA: Se você entende um pouco de programação ou mesmo domina a linguagem VBA, pode criar suas macros por conta própria. Para isso basta utilizar o editor de VBA presente nas versões mais recentes do Microsoft Excel.

Como dito anteriormente é possível realizar uma infinidade de operações com as macros, no entanto existem algumas que se destacam das demais por serem mais utilizadas no dia-a-dia. Veja 10 macros que vão ajudar você com as suas planilhas.

1) Mostrando uma mensagem

Basta inserir na sua macro o comando MsgBox. Veja como no exemplo abaixo:

MsgBox “texto da mensagem”

10 exemplos de macros essenciais no Excel

1

Essa linha de código pode ser inserida em qualquer macro, muito útil nos casos onde se faz necessário emitir avisos ao usuário da planilha que está rodando a macro.

Curso de VBA em Excel

2) Execute uma macro quando abrir a planilha

Existem casos onde a macro precisa ser aberta juntamente com a planilha. Nesse caso basta montar uma macro com o parâmetro Auto_Open(). Confira no exemplo

Sub Auto_Open()
MsgBox “Para saber tudo sobre Excel, acesse www.https://luz.vc/”
End Sub

10 exemplos de macros essenciais no Excel

No exemplo acima, assim que a planilha for aberta uma mensagem será exibida. Não se esqueça de habilitar as macros no seu Excel.

3) Planilha com data e hora atual

É possível escrever a data e a hora atual na planilha. O exemplo a seguir insere esses dados na célula A1, veja.

Sub escreverDataEHora()
Range(“A1”) = Now
End Sub

10 exemplos de macros essenciais no Excel

10 exemplos de macros essenciais no Excel

Curso de VBA em Excel

4) Execute a mesma ação em cada célula selecionada

Em algum momento  você precisara executar uma ação nas células que foram selecionadas pelo usuário. Para isso crie uma macro igual o exemplo abaixo.

Sub fazerAlgoACadaCelula()
For Each cell In Selection.Cells
MsgBox cell
Next
End Sub

10 exemplos de macros essenciais no Excel

Curso de VBA em Excel

5) A mesma coisa em todas as células selecionadas

Você pode fazer a mesma macro anterior mas de forma um pouco mais abrangente, ou seja a ação não será realizada em etapas. O exemplo abaixo escreve “Olá” em todas as células.

Sub fazerAlgoATodasAsCelulas()
Selection.Cells.Value = “Olá”
End Sub

10 exemplos de macros essenciais no Excel

10 exemplos de macros essenciais no Excel

Você pode fazer uma infinidade de inserções no código, como por exemplo mudar a cor do texto, tamanho da fonte, tipo de fonte e muito mais.

6) Identificando formulas dentro de cada celula

É altamente recomendável  verificar se existe algo dentro da célula,  sempre que uma modificação na célula seja necessário. Nesse exemplo verificaremos se existe alguma formula na célula em questão.

Sub verificarFormula()
If Range(“A1”).HasFormula = True Then
MsgBox “Existe Formula”
Else
MsgBox “Não é uma Formula”
End If
End Sub

10 exemplos de macros essenciais no Excel

Curso de VBA em Excel

7) Mudar cor da célula ao passar o mouse

Você também pode querer proporcionar mais interatividade com os usuários da planilha. O ideal é que a interatividade tenha o objetivo de facilitar o serviço e visualização das informações. A macro abaixo é um exemplo de como você pode fazer com que sua tabela apresente células com o mesmo tom de cor sempre que o mouse passar por um dado que correlacione essas células.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim LinhaInicio As Range
Dim Linha As Range
Dim Linha2 As Long

Cells.Interior.ColorIndex = xlNone

Linha2 = Target.Row

Set LinhaInicio = Range(“A” & Linha2, Target)

‘Pinta da celula selecionada até a coluna 5
Set Linha = Range(Cells(Target.Row, 1), Cells(Target.Row, 5))

With Linha
.Interior.ColorIndex = 12
End With

End Sub

10 exemplos de macros essenciais no Excel

Curso de VBA em Excel

8) Mudando a cor do interior e das fontes

Esta macro , altera as cores no interior e na fonte das células, de acordo com a letra das células.

Sub Colorir_fonte_interior_letra()
For N = 1 To Range(“O65536”).End(xlUp).Row

Select Case Range(“O” & N)
Case “A”
Range(“O” & N).Interior.ColorIndex = 3
Range(“O” & N).Font.ColorIndex = 1

Case “B”
Range(“O” & N).Interior.ColorIndex = 4
Range(“O” & N).Font.ColorIndex = 2

Case “C”
Range(“O” & N).Interior.ColorIndex = 5
Range(“O” & N).Font.ColorIndex = 3

Case “D”
Range(“O” & N).Interior.ColorIndex = 7
Range(“O” & N).Font.ColorIndex = 12

Case Else
Range(“O” & N).Interior.ColorIndex = 6
Range(“O” & N).Font.ColorIndex = 4
End Select

Next N

End Sub

10 exemplos de macros essenciais no Excel

Curso de VBA em Excel

9) Macro que fala

Já pensou que interessante ter uma planilha que fala os dados contidos nela, é exatamente isso que essa macro faz. No exemplo abaixo a planilha possuía palavras que iam da célula A1 até a A5, mas você pode escolher o intervalo que achar mais conveniente, para isso basta alterar o A1:A5 presentes no código abaixo, pelo intervalo que preferir.

Sub ExcelFalando()

Range(“A1:A5”).Speak

End Sub

10 exemplos de macros essenciais no Excel

10) Desbloqueando planilhas com senha

Alguém colocou senha na sua planilha e agora você não consegue mais desbloqueá-la. Não se preocupe com essa macro você poderá acessar novamente todo o conteúdo armazenado nesse arquivo de Excel. Para isso abra a planilha com bloqueio e acesso o editor de VBA. No editor você criará uma macro da seguinte forma:

Sub Desbloqueia_Planilha()

Dim i As Integer, j As Integer, k As Integer
Dim l As Integer, m As Integer, n As Integer
On Error Resume Next
For i = 65 To 66
For j = 65 To 66
For k = 65 To 66
For l = 65 To 66
For m = 65 To 66
For i1 = 65 To 66
For i2 = 65 To 66
For i3 = 65 To 66
For i4 = 65 To 66
For i5 = 65 To 66
For i6 = 65 To 66
For n = 32 To 126
ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & _
Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
If ActiveSheet.ProtectContents = False Then
MsgBox “Sua planilha foi desbloqueada ”
Exit Sub
End If
Next
Next
Next
Next
Next
Next
Next
Next
Next
Next
Next
Next

End Sub

10 exemplos de macros essenciais no Excel

Execute essa macro na planilha bloqueada e espere até que a senha seja quebrada.

Obs.: Cuidado com o numero de next no final na macro, eles devem fechar os laços FOR abertos.

11) Bônus: Protegendo planilhas com login e senha

Se você leu até aqui, nada mais justo do que ser surpreendido com mais um item nessa lista. E, trata-se de uma macro que você pode ter acesso agora mesmo. Muitas pessoas têm problemas na hora de restringir dados em uma planilha na hora de compartilha-la com parceiros, colaboradores, etc.

Por isso, criamos uma macro pronta para restringir abas através de login e senha em planilhas. Você poderá criar usuários e definir o que eles podem acessar em determinadas planilhas. Veja exemplos abaixo:

Como restringir acesso a abas de uma planilha

Para ter acesso a Planilha para Criar Login e Senha em Outras Planilhas, clique aqui!

Esses são apenas alguns exemplos de macros que você pode utilizar no dia a dia. Vale lembrar que toda macro é um mini programa e por isso é fundamental ter cuidado para não executar qualquer tipo de macro, principalmente se ela vier em planilhas de terceiros.

E você já usa alguma macro no seu cotidiano? Compartilhe conosco a sua experiência deixando um comentário ou entrando em contato!

Curso de VBA em Excel

COMPARTILHAR
Artigo anteriorComo criar um banco de dados em Excel
Próximo artigoLucro Real ou Presumido: A planilha em ação
Rafael Ávila

Administrador e turismólogo, apaixonado pelas possibilidades que o Excel dá para gestores, empreendedores e estudantes. É sócio diretor da área de planilhas na LUZ – Planilhas Empresariais (luz.vc) e é o responsável pelo desenvolvimento das mais de 150 planilhas com foco empresarial e pessoal comercializadas em seu site. Também ministra os cursos online de Excel (cursos.luz.vc) e gosta de ajudar milhares de planilheiros por meio do Fórum e Blog da LUZ.

5 COMENTÁRIOS

  1. Olá Rafael tudo bem? uma vez eu vi uma macro que era o seguinte: tudo queeu fazia dentro do excel, essa macro ficava repetindo o que eu tinha feito tipo como se eu tivesse gravando a tela, como fazer macro vc sabe?

    Desde Já Agradeço!

  2. gostei muito das dicas do site.

    pf., preciso saber se é possível varrer uma determinada coluna que tem códigos que se repetem e tomar uma ação a cada vez que o código muda. Exemplo:
    1
    1
    _ Acao referente ao codigo 1
    2
    2
    2
    _ Acao referente ao codigo 2
    5
    5
    _ Acao referente ao codigo 5
    o programa teria que identificar a mudança do padrão

    é possível?

  3. Olá gostei muito do blog e as matérias contidas.

    Gostaria de uma Ajuda com uma Planilha Financeira Empresarial, eu procuro criar no vba, uma tela de “boas Vindas” com Login e Formulário. Deixando o Excel invisível para somente abrir apos acesso depois de preencher o formulário onde o mesmo formulário Colocaria os Dados fornecidos como CNPJ, Nome da Empresa, CPF e outros dados necessários. Porem esse userforme apareceria para preenchimento somente uma vez na primeira abertura , pois depois de preenchido as informações empresariais ele as manteria e me permitira escolher em qual Plan quero visualizar ou acessar .. Como disse uma planilha empresarial financeira com varias plan ( de Janeiro a Dezembro).

    Eu tenho o esboço do que quero na cabeça mais nao sei como montar rsrs’ pode me ajudar ?

DEIXE UMA RESPOSTA

Por favor, escreva o seu comentário
Por favor, digite seu nome