Programação VBA do Excel: O que são códigos VBA e como usá-los

Desde o seu lançamento em 1987, o Microsoft Excel tornou-se rapidamente uma aplicação de referência para planilhas e, atualmente, a maioria das pessoas utiliza as suas capacidades de cálculo, computação e gráficos. No entanto, o Excel também tem muitas funcionalidades avançadas que os utilizadores desconhecem, como a automatização de tarefas com códigos VBA e macros.

Hoje, vamos discutir estas funcionalidades avançadas e ensiná-lo a otimizar o seu fluxo de trabalho. Iremos aprofundar os códigos VBA e as macros do Excel e mostrar-lhe como utilizá-los através de exemplos. Haverá também uma seção sobre como evitar a perda de dados, uma vez que os códigos VBA podem eliminar os dados do Excel se forem mal utilizados.

Neste artigo
    1. Inserir várias colunas
    2. Inserir várias linhas
    3. Colunas AutoFit
    4. Linhas AutoFit
    5. Separar células
    6. Destacar valores maiores
    7. Destacar valores inferiores
    8. Destacar números negativos
    9. Destacar células mal escritas
    10. Desocultar planilhas de trabalho
    11. Eliminar tudo exceto as planilhas de trabalho ativas
    12. Deletar planilhas em branco
    13. Salvar planilhas de trabalho como PDFs
    14. Fechar planilhas de trabalho
    15. Atualizar tabelas dinâmicas
    16. Adicionar gráficos como imagens
    17. Insira Imagens
    18. Remover conjunto de caracteres
    19. Texto invertido
    20. Substituir células vazias por zeros

O que é um código VBA?

Antes de analisarmos os exemplos de código VBA, precisamos abordar sobre o VBA e explicar o que é. VBA ou Visual Basic Applications é uma linguagem de programação na qual as aplicações do Microsoft Office, como o Excel, utilizam para criar, salvar e implementar macros, também conhecidas como scripts de tarefas automatizadas.

Por outro lado, as macros são scripts de programação ou um conjunto de comandos que podem automatizar o fluxo de trabalho do Excel. Estes scripts permitem que os utilizadores realizem ações complexas e demoradas em planilhas com um atalho pré-gravado, permitindo poupar tempo ao gerir dados, tabelas dinâmicas e organizar as planilhas.

Como utilizar códigos macros no Excel?

Agora que já conhecemos os princípios básicos das macros do Excel, vamos começar imediatamente a utilizar estes códigos e mostrar como criar um através de um exemplo de uma macro no Excel. Veja a seguir o que é necessário fazer:

  1. Inicie o Microsoft Excel e navegue até File > Options > Customize Ribbon.
  2. Abaixo de Main Tabs verifique a caixa próximo à Developer para ativar a função que está oculta por padrão.
    Adicionar a aba do desenvolvedor no Excel
  3. Salve suas configurações clicando em OK e, em seguida, vá até Developer.
    Navegue para adicionar a aba do desenvolvedor
  4. Selecione a opção Record Macro.
    Inicie registrando um macro no Excel
  5. Nomeie o seu macro e descreva brevemente sua função para que você possa identificar mais tarde. Você também pode adicionar atalhos para acessar o macro.
  6. Depois de inserir os detalhes da macro, toque em OK e execute as ações que pretende adicionar à macro. A aplicação Excel irá registar e salvar estas ações dentro de macro criada.
  7. Clique em Stop Recording depois das ações serem concluídas, a sua macro também será concluída.
    Parar a gravação e concluir a macro
  8. Quando for necessário voltar a utilizar estes passos, você pode pressionar os botões do teclado e acessar a macro através do atalho que definiu. Alternativamente, navegue até Developer > Macros > View Macros e toque em Run na macro desejada.

As suas ações pré-gravadas serão executadas através da macro e você poderá verificar os resultados. Lembre-se de que a verificação é uma etapa extremamente importante, especialmente para iniciantes em macros, e permite garantir que as suas novas tarefas automatizadas funcionam bem. Você terá de editar as suas macros se as suas ações não funcionarem como pretendido.

20 exemplos básicos de código VBA do Excel para iniciantes

Como mencionado anteriormente, VBA significa Visual Basic Applications, uma linguagem que o Excel pode compreender. As macros criadas com os passos acima mencionados registam as ações da planilha, as transformam em código VBA legível pelo Excel e as salvam como algo que o Excel pode reconhecer e compreender.

Dito isto, também nos são fornecidos alguns exemplos básicos de código VBA e macros, por isso vamos ver como são as macros úteis e para que as pode utilizar:

  1. Inserir várias colunas
  2. Inserir várias linhas
  3. Colunas AutoFit
  4. Linhas AutoFit
  5. Separar células
  6. Destacar valores maiores
  7. Destacar valores inferiores
  8. Destacar números negativos
  9. Destacar células mal escritas
  10. Desocultar planilhas de trabalho
  11. Eliminar tudo exceto as planilhas de trabalho ativas
  12. Deletar planilhas em branco
  13. Salvar planilhas de trabalho como PDFs
  14. Fechar planilhas de trabalho
  15. Atualizar tabelas dinâmicas
  16. Adicionar gráficos como imagens
  17. Insira Imagens
  18. Remover conjunto de caracteres
  19. Texto invertido
  20. Substituir células vazias por zeros

Estas macros fazem o que o seu nome sugere, e você pode copiá-las e experimentá-las nos seus próprios arquivos XLS. Encontrará os códigos VBA abaixo, mas lembre-se de os testar planilhas sem importância ou de criar previamente cópias dos seus arquivos vitais.

Inserir várias colunas

Sub InsertMultipleColumns()
Dim i As Integer
Dim j As Integer
ActiveCell.EntireColumn.Select
On Error GoTo Last
i = InputBox("Enter the number of columns to insert", "Insert Columns"
For j = 1 To i
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromRightorAbove
Next j
Last: Exit Sub
End Sub

Inserir várias linhas

Sub InsertMultipleRows()
Dim i As Integer
Dim j As Intege
ActiveCell.EntireRow.Select
On Error GoTo Last
i = InputBox("Enter the number of rows to insert", "Insert Rows")
For j = 1 To i
Selection.Insert, Shift:=xlToDown,CopyOrigin:=xlFormatFromRightorAbove
Next j
Last: Exit Sub
End Sub

Colunas AutoFit

Sub AutoFitColumns()
Cells.Select
Cells.EntireColumn.AutoFit
End Sub

Linhas AutoFit

Sub AutoFitRows()
Cells.Select
Cells.EntireRow.AutoFit
End Sub

Separar células

Sub UnmergeCells()
Selection.UnMerge
End Sub

Destacar valores maiores

Sub HighlightGreaterThanValues()
Dim i As Integer
i = InputBox("Enter Greater Than Value", "Enter Value")
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, _
Operator:=xlGreater, Formula1:=i
Selection.FormatConditions(Selection.FormatConditions.Count).S
tFirstPriority
With Selection.FormatConditions(1)
.Font.Color = RGB(0, 0, 0)
.Interior.Color = RGB(31, 218, 154)
End With
End Sub

Destacar valores inferiores

Sub HighlightLowerThanValues()
Dim i As Integer
i = InputBox("Enter Lower Than Value", "Enter Value")
Selection.FormatConditions.Delete
Selection.FormatConditions.Add _
Type:=xlCellValue, _
Operator:=xlLower, _
Formula1:=i
Selection.FormatConditions(Selection.FormatConditions.Count).S
tFirstPriority
With Selection.FormatConditions(1)
.Font.Color = RGB(0, 0, 0)
.Interior.Color = RGB(217, 83, 79)
End With
End Sub

Destacar números negativos

Sub highlightNegativeNumbers()
Dim Rng As Range
For Each Rng In Selection
If WorksheetFunction.IsNumber(Rng) Then
If Rng.Value < 0 Then
Rng.Font.Color= -16776961
End If
End If
Next
End Sub

Destacar células mal escritas

Sub HighlightMisspelledCells()
Dim rng As Range
For Each rng In ActiveSheet.UsedRange
If Not Application.CheckSpelling(word:=rng.Text) Then
rng.Style = "Bad"
End If
Next rng
End Sub

Desocultar planilhas de trabalho

Sub UnhideAllWorksheet()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
ws.Visible = xlSheetVisible
Next ws
End Sub

Eliminar tudo exceto as planilhas de trabalho ativas

Sub DeleteWorksheets()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
If ws.name <> ThisWorkbook.ActiveSheet.name Then
Application.DisplayAlerts = False
ws.Delete
Application.DisplayAlerts = True
End If
Next ws
End Sub

Deletar planilhas em branco

Sub deleteBlankWorksheets()
Dim Ws As Worksheet
On Error Resume Next
Application.ScreenUpdating= False
Application.DisplayAlerts= False
For Each Ws In Application.Worksheets
If Application.WorksheetFunction.CountA(Ws.UsedRange) = 0 Then
Ws.Delete
End If
Next
Application.ScreenUpdating= True
Application.DisplayAlerts= True
End Sub

Salvar planilhas de trabalho como PDFs

Sub SaveWorkshetAsPDF()
Dimws As Worksheet
For Each ws In Worksheets
ws.ExportAsFixedFormat _
xlTypePDF, _
"ENTER-FOLDER-NAME-HERE" &; _
ws.Name & ".pdf"
Next ws
End Sub

Fechar planilhas de trabalho

Sub CloseAllWorkbooks()
Dim wbs As Workbook
For Each wbs In Workbooks
wbs.Close SaveChanges:=True
Next wb
End Sub

Atualizar tabelas dinâmicas

Sub vba_referesh_all_pivots()
Dim pt As PivotTable
For Each pt In ActiveWorkbook.PivotTables
pt.RefreshTable
Next pt
End Sub

Adicionar gráficos como imagens

Sub ConvertChartToPicture()
ActiveChart.ChartArea.Copy
ActiveSheet.Range("A1").Select
ActiveSheet.Pictures.Paste.Select
End Sub

Insira Imagens

Sub Image nameedPicture()
Selection.Copy
ActiveSheet.Pictures.Paste
End Sub

Remover conjunto de caracteres

Public Function removeFirstC(rng As String, cnt As Long)
removeFirstC = Right(rng, Len(rng) - cnt)
End Function

Texto invertido

Public Function rvrse(ByVal cell As Range) As String
rvrse = VBA.strReverse(cell.Value)
End Function

Substituir células vazias por zeros

Sub replaceBlankWithZero()
Dim rng As Range
Selection.Value = Selection.Value
For Each rng In Selection
If rng = ““ Or rng = “ “ Then
rng.Value = "0"
Else
End If
Next rng
End Sub

🚀 [Bônus] Como garantir a segurança dos dados ao utilizar códigos VBA

Como deve ter reparado, alguns exemplos de código VBA acima incluem tarefas de eliminação de dados, e muitos especialistas em Excel utilizam essas macros diariamente. No entanto, vale a pena notar que a sua utilização incorreta pode apagar as suas valiosas planilhas do Excel, pelo que terá de ter cuidado com essas macros.

No entanto, não há nada a temer, mesmo que já tenha utilizado códigos VBA de eliminação de dados, uma vez que existem soluções que podem restaurar os seus arquivos Excel. As aplicações de recuperação de dados fazem maravilhas nestas situações, e uma ferramenta como o Wondershare Recoverit é um exemplo perfeito.

Teste Grátis
Teste Grátis

Quer esteja lidando com palnilhas Excel perdidas, alterações recentes não salvas, dados eliminados ou códigos VBA de eliminação de dados utilizados acidentalmente, esta aplicação pode ajudar. O seu algoritmo de pesquisa e recuperação eficiente e avançado pode restaurar rapidamente os arquivos perdidos, independentemente das situações de perda de dados, uma vez que a aplicação suporta mais de 500 destas situações. Utilizá-lo é muito fácil, veja como fazer:

  1. Abra o Wondershare Recoverit e escolha a opção Hard Drives e Locations.
    interface do usuário wondershare recoverit
  2. Selecione o drive de disco onde armazena os arquivos XLS - a aplicação irá imediatamente verificar se existem dados perdidos.
    Procurar planilhas do Excel deletadas
  3. Adicione filtros e palavras-chave para procurar arquivos Excel específicos.
    Modificar os filtros de arquivo e adicionar palavras-chave
  4. O Wondershare Recover permite pré-visualizar arquivos Excel quando são encontrados. Caso esteja satisfeito com a pré-visualização, você tem a opção de pausar ou interromper a verificação e, em seguida, clicar em Recover para salvar os arquivos identificados em seu computador.
    Pré-visualizar e recuperar arquivos Excel

Com o Wondershare Recoverit no seu arsenal, você poderá utilizar e praticar com segurança códigos VBA avançados e levar o seu fluxo de trabalho do Excel para outro nível sem se preocupar em errar. Também pode tratar arquivos como música, fotografias e vídeos, suportando mais de 1.000 tipos de arquivos recuperáveis.

Pode utilizar a aplicação em discos internos, armazenamento externo, NAS, USBs e outros, uma vez que o Wondershare Recoverit suporta mais de 2.000 dispositivos de armazenamento. É perfeito para a perda de dados causada por malware, falhas do sistema, transferências de arquivos interrompidas, unidades de disco com falhas, etc., tornando-o uma ferramenta ideal para garantir a segurança dos dados.

Conclusão

Para além das capacidades de cálculo, computação e planilha, o Microsoft Excel possui várias funcionalidades avançadas, tais como macros, que podem simplificar o seu fluxo de trabalho e automatizar tarefas entediantes, poupando o tempo precioso. Estas macros transformam as suas ações pré-gravadas em código VBA, uma linguagem de programação que o Excel pode compreender e utilizar.

Desde a adição de várias linhas ou colunas até ao ajuste automático de entradas de dados, passando pelo realce de valores, erros e caracteres, até à formatação das planilhas, os códigos VBA podem levar as suas competências em Excel para o nível seguinte com alguma prática. E se as coisas correrem mal e cometer um erro com os códigos VBA de eliminação de dados, as aplicações de recuperação como o Wondershare Recoverit podem recuperar sem esforço os seus arquivos XLS vitais e os dados do Excel.

Teste Grátis
Teste Grátis

Perguntas frequentes

  • É necessário utilizar os códigos VBA e macros?
    Não. A maioria dos utilizadores do Excel trabalha com planilhas sem tocar em macros e sem mergulhar em códigos VBA, uma vez que todas as funções podem ser concluídas sem estes. No entanto, os códigos VBA podem ajudar significativamente a simplificar o seu fluxo de trabalho, uma vez que automatizam várias ações numa única macro, que pode ser invocada através de um atalho de teclado, permitindo uma enorme poupança de tempo.
  • Como aprender a criar as minhas macros?
    As macros do Excel são funcionalidades avançadas que requerem tempo e prática. Para os iniciantes, é melhor começar com pouco e automatizar algumas tarefas de cada vez ou copiar e colar códigos VBA existentes de tutoriais e guias no YouTube e em fóruns do Excel. Depois que você se adaptar, será possível experimentar as suas macros no editor do Visual Basic e testá-las em arquivos XLS sem importância.
  • Como editar os meus códigos ou macros VBA?
    Editar macros existentes é tão fácil como criar uma nova. Veja como fazer:

    1. Navegue até Developer e selecione Macros.

    2. Escolha a macro que você deseja alterar e clique em Edit.

    3. Altere o código VBA no editor do Visual Basic e salve a macro.

    É possível testar novamente as suas macros e aperfeiçoá-las sempre que necessário.

Luís Santos
Luís Santos Nov 09, 24
Compartilhe o artigo: