O que é VBA (Visual Basic for Applications) – Conceitos Básicos

O que é e para que serve o VBA?

O Visual Basic for Applications (VBA) é uma linguagem de programação incorporada em alguma aplicações da Microsoft, como o Excel, Word, PowerPoint, Outlook, Visio, etc. Também está incorporada parcialmente em algumas aplicações de terceiros como por exemplo no AutoCAD da AutoDesk.

O VBA é uma programação adaptada do Visual Basic que teve a sua base no antigo BASIC (um acrônimo para Beginner’s All-purpose Symbolic Instruction Code). O BASIC surgiu no início dos anos 60 como uma forma de ensinar técnicas de programação para estudantes universitários, mas ganhou mais respeito a partir de 1991, quando a Microsoft lançou o Visual Basic para Windows, um produto que tornou mais fácil o desenvolvimento de aplicações para o Microsoft Windows.

Como o nome sugere, o VBA é muito parecido com o Visual Basic, e por ser uma linguagem incorporada só pode rodar código de dentro da aplicação, em vez de executar como aplicação separada. Pode no entanto ser usado para controlar uma aplicação a partir de outra (por exemplo para criar um relatório no Microsoft Word a partir de dados no Excel, criar extensões (suplementos) para a aplicação anfitriã, e uma infinidade de outras possibilidades.

Os fundamentos básicos do VBA

Antes de começar a se aventurar pelas linhas de código é necessário conhecer alguns conceitos para obter uma ampla visão do que iremos trabalhar. Lembre-se que esse artigo é apenas uma introdução bem básica do VBA e que cada um dos conceitos citados abaixo podem ser bastante profundos.

Macro: um dos termos mais utilizados. Uma macro é um conjunto de instruções que devem ser executadas de forma lógica para obter um determinado resultado. Por exemplo, uma macro para criar um gráfico com os registros dos últimos 12 meses de produção de uma empresa.

Módulos: É um conjunto de procedimentos (procedures) agrupados, que podem ser visualizados ou editados através do VBE (Visual Basic Editor). Os módulos são armazenados em uma pasta de trabalho do Excel (workbook).

 Procedures: Uma procedure ou procedimento em tradução livre, é uma unidade do código que executa uma determinada ação. Uma procedure é basicamente uma macro, e podem ser de dois tipos: Sub ou Function.

  • Uma Sub procedure é escrita quando você deseja que a aplicação execute uma determinada tarefa. Por exemplo: Um procedimento que exibe uma mensagem na tela.
Sub ExibirMensagem()

MsgBox "Olá, Mundo!"

End Sub
  • Uma Function procedure é escrita quando você deseja que a aplicação execute determinados cálculos e retorne um valor (resultado).  No exemplo abaixo criamos uma função para retornar a média de dois valores. Uma função pode ser chamada através de outra procedure, ou através de fórmulas no Excel. Se após você criar a função abaixo, você digitar em uma célula =CalcMedia(10;20) o Excel irá retornar o valor 15.
Function CalcMedia(num1, num2)

CalcMedia = (num1 + num2)/2

End Sub

Variáveis: As variáveis são pequenos slots de memória que você pode utilizar para armazenar algum valor. Cada variável possui um nome. Por exemplo: no exemplo acima os valores que serão utilizados no cálculo da média são armazenados em duas variáveis, uma chamada num1 e a outra num2

Objetos: O VBA manipula objetos contidos em seu aplicativo anfitrião, que no nosso caso é o Excel. Um gráfico é um objeto. Uma planilha é um objeto. Uma célula é outro objeto. Tudo que existe dentro do Excel é um objeto.

Classes: Cada objeto pode ser classificado em uma classe de objeto, que determina que tipo de objeto ele é. Objetos da mesma classe tem os mesmos métodos e propriedades.

Propriedades: As propriedades são como configurações de um objeto. Algumas propriedades podem ser mudadas e outras não. Por exemplo: objetos da classe Range possuem uma propriedade chamada Address, que contém o endereço da célula ou intervalo a que se refere o objeto. Essa é uma propriedade do objeto que não pode ser alterada. Já outras propriedades podem sofrer alterações. Os mesmos objetos da classe Range possuem outra propriedade chamada Value, que contém o valor dentro da célula ou intervalo. Esse valor pode ser mudado a qualquer momento.

Para alterar uma propriedade de um objeto basta informar qual objeto e qual propriedade deseja, e atribuir um novo valor. Por exemplo:

Range("A1").Value = "Guru do Excel"

Você também pode acessar o valor da uma propriedade de um objeto e atribuí-lo a uma variável. No exemplo abaixo atribuímos o valor da célula A1 a variável Nome

Nome = Range("A1").Value

Métodos: Os métodos são ações que podem ser executadas com um objeto. Usando o mesmo objeto da classe Range, podemos por exemplo, chamar o método ClearContents, que limpa todo o conteúdo do objeto.

Para executar um método é só informar o objeto e qual método deseja executar.

Range("A1").ClearContents

Coleções: As coleções são grupos que contém vários objetos de um mesmo tipo. Por exemplo a coleção Workbooks contém vários objetos do tipo Workbook (mais especificamente as pastas de trabalhos abertas)

Eventos: os eventos são determinadas ações que podem ocorrer durante a execução do aplicativo. E é possível configurar uma ação (ou várias ações) para ser executada(s) quando tal evento ocorrer. Imagine que você deseja sempre que a sua pasta de trabalho for iniciada seja exibida uma mensagem de boas vindas ao usuário.

Sub workbook_open()

MsgBox "Seja Bem-vindo!"

End Sub

Agora é com você!

Muitos conceitos apresentados aqui podem parecer confusos a primeira vista, principalmente para quem nunca teve contato com nenhuma outra linguagem de programação. Se tiver interesse em continuar sabendo mais sobre VBA, deixe o seu contato no formulário abaixo que continuaremos enviar mais conteúdo sobre o assunto para você.

Para finalizar, gostaria que você deixasse nos comentários abaixo o que achou dos conceitos apresentado e suas expectativas para com o VBA.

2019-03-26T10:12:38-03:00

2 Comentários

  1. Reginaldo Nobrega 1 de abril de 2019 at 14:10 - Reply

    Muito interessante o curso. Gostaria de continuar

  2. José Luiz Castro 8 de maio de 2019 at 10:26 - Reply

    Olá,
    Gostaria de saber como usar SQL em planilhas. O objetivo é efetuar extrações de dados via formulários. Um pequeno sistema para auxiliar o usuário.

Comente!

Informações de Contato

  • Av. Paulista, 171, Andar 4, Bela Vista, São Paulo/SP CEP 01311-904
  • (11) 9 4052 2499
  • comercial@datab.com.br
  • De Segunda à Sexta-feira Das 9:00 às 18:00

Posts recentes