/ / Excel VBA Workbook e objeto de planilha

Pasta de trabalho do VBA do Excel e objeto de planilha

Hierarquia de objetos | Coleções | Propriedades e Métodos

Saiba mais sobre o Pasta de trabalho e Objeto de planilha em Excel VBA.

Hierarquia de objetos

No Excel VBA, um objeto pode conter outroobjeto, e esse objeto pode conter outro objeto, etc. Em outras palavras, a programação do Excel VBA envolve o trabalho com uma hierarquia de objetos. Isso provavelmente parece bastante 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 de aplicativo contém outros objetos. Por exemplo, o objeto de pasta de trabalho (arquivo do Excel). Pode ser qualquer pasta de trabalho que você tenha criado. O objeto de pasta de trabalho contém outros objetos, como o objeto de planilha. 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:

Range("A1").Value = "Hello"

mas o que realmente queríamos dizer era:

Application.Workbooks("create-a-macro").Worksheets(1).Range("A1").Value = "Hello"

Nota: os objetos estão conectados com um ponto. Felizmente, não precisamos adicionar uma linha de código dessa maneira. Isso é porque colocamos nosso botão de comando em create-a-macro.xls, na primeira planilha. Esteja ciente de que, se você quiser alterar as coisas em planilhas diferentes, inclua o objeto Planilha. Leia.

Coleções

Você deve ter notado que as pastas de trabalho eAs planilhas são ambas no plural. Isso é porque são coleções. A coleção de pastas de trabalho contém todos os objetos de pasta de trabalho que estão abertos no momento. A coleção Worksheets contém todos os objetos de planilha em uma pasta de trabalho.

Nomes de planilha

Você pode se referir a um membro da coleção, por exemplo, um único objeto Planilha, de três maneiras.

1. Usando o nome da planilha.

Worksheets("Sales").Range("A1").Value = "Hello"

2. Usando o número do índice (1 é a primeira planilha a partir da esquerda).

Worksheets(1).Range("A1").Value = "Hello"

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 é o CodeName. O segundo nome é o nome da planilha (Vendas).

Nome de código

Nota: o CodeName permanece o mesmo se você alterar o nome da planilha ou a ordem de suas planilhas, portanto, essa é a maneira mais segura de fazer referência a uma planilha. Clique em View, Properties Window para alterar o CodeName de uma planilha. Há uma desvantagem, você não pode usar o CodeName se você fizer referência a uma planilha em uma pasta de trabalho diferente.

Propriedades e Métodos

Agora vamos dar uma olhada em algumas propriedades emétodos da coleção Pastas de Trabalho e Planilhas. Propriedades são algo que uma coleção possui (elas descrevem a coleção), enquanto os métodos fazem alguma coisa (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 folha:

Contar Propriedade no Excel VBA

Nota: a propriedade Count da coleção Workbooks conta o número de pastas de trabalho ativas.

Leia também: