Hierarquia de objetos | Coleções | Propriedades e Métodos
Saiba mais sobre o Livro de exercícios e Objeto de planilha em Excel VBA.
Hierarquia de Objetos
No Excel VBA, um objeto pode conter outro objeto, e esse objeto pode conter outro objeto, etc. Em outras palavras, a programação do Excel VBA envolve trabalhar com uma hierarquia de objetos. Isso provavelmente parece muito confuso, mas vamos deixar isso claro.
A mãe de todos os objetos é o próprio Excel. Nós o chamamos de objeto Aplicativo. O objeto do aplicativo contém outros objetos. Por exemplo, o objeto Pasta de trabalho (arquivo do Excel). Pode ser qualquer pasta de trabalho que você criou. O objeto Workbook contém outros objetos, como o objeto Worksheet. O objeto Worksheet contém outros objetos, como o objeto Range.
O capítulo Criar uma Macro ilustra como executar o código clicando em um botão de comando. Usamos a seguinte linha de código:
Intervalo ("A1"). Valor = "Olá"
mas o que realmente quisemos dizer foi:
Application.Workbooks ("create-a-macro"). Worksheets (1) .Range ("A1"). Value = "Hello"
Nota: os objetos são conectados com um ponto. Felizmente, não precisamos adicionar uma linha de código dessa forma. Isso porque colocamos nosso botão de comando em create-a-macro.xlsm, na primeira planilha. Esteja ciente de que se você quiser alterar coisas em planilhas diferentes, deverá incluir o objeto Planilha. Leia.
Coleções
Você deve ter notado que as pastas de trabalho e as planilhas estão no plural. Isso porque são coleções. A coleção Workbooks contém todos os objetos Workbook que estão abertos no momento. A coleção Worksheets contém todos os objetos Worksheet em uma pasta de trabalho.
Você pode se referir a um membro da coleção, por exemplo, um único objeto Worksheet, de três maneiras.
1. Usando o nome da planilha.
Planilhas ("Vendas"). Intervalo ("A1"). Valor = "Olá"
2. Usando o número do índice (1 é a primeira planilha começando da esquerda).
Planilhas (1) .Range ("A1"). Valor = "Olá"
3. Usando o CodeName.
Sheet1.Range ("A1"). Value = "Hello"
Para ver o CodeName de uma planilha, abra o Editor do Visual Basic. No Project Explorer, o primeiro nome é CodeName. O segundo nome é o nome da planilha (Vendas).
Nota: o CodeName permanece o mesmo se você alterar o nome da planilha ou a ordem de suas planilhas, portanto, esta é a maneira mais segura de fazer referência a uma planilha. Clique em Exibir, Janela de propriedades para alterar o CodeName de uma planilha. Há uma desvantagem: você não pode usar o CodeName se fizer referência a uma planilha em uma pasta de trabalho diferente.
Propriedades e Métodos
Agora, vamos dar uma olhada em algumas propriedades e métodos da coleção Workbooks and Worksheets. Propriedades são algo que uma coleção possui (elas descrevem a coleção), enquanto os métodos fazem algo (eles executam uma ação com uma coleção).
Coloque um botão de comando em sua planilha e adicione as linhas de código:
1. O método Add da coleção Workbooks cria uma nova pasta de trabalho.
Workbooks.Add
Nota: o método Add da coleção Worksheets cria uma nova planilha.
2. A propriedade Count da coleção Worksheets conta o número de planilhas em uma pasta de trabalho.
MsgBox Worksheets.Count
Resultado quando você clica no botão de comando na planilha:
Observação: a propriedade Contagem da coleção Pastas de trabalho conta o número de pastas de trabalho ativas.