VBA CreateObject (Criar objeto)

Índice

Este artigo mostrará como usar o método Create Object no VBA.

VBA é uma linguagem orientada a objetos - ela usa procedimentos para controlar e criar objetos.

Criar Objeto

Podemos usar o método Create Object para criar um objeto em um aplicativo do Microsoft Office. Por exemplo, se estivermos escrevendo código VBA no Excel e quisermos abrir uma cópia do Word, podemos usar o método Create Object para criar uma nova instância do Word.

Por exemplo:

12345 Sub CreateWordInstance ()Dim wdApp como objetoDefina wdApp = CreateObject ("Word.Application")wdApp.Visible = TrueEnd Sub

Da mesma forma, podemos criar uma nova instância do PowerPoint ou Access.

12345 Sub CreatePowerPointApplicationDim ppApp como objetoDefina ppApp = CreateObject ("PowerPoint.Application")ppApp.Visible = TrueEnd Sub

Também podemos usar Create Object para criar objetos diferentes do Application Object. Podemos usá-lo para criar uma planilha do Excel, por exemplo.

1234567 Sub CreateExcelSheet ()Dim xlSheet As ObjectDefinir xlSheet = CreateObject ("Excel.Sheet")xlSheet.Application.Visible = TruexlSheet.Application.Range ("A2") = "Bom dia"Definir xlSheet = NothingEnd Sub

No entanto, isso na verdade cria uma nova instância do Excel - não cria a planilha na instância que já está aberta. Por esse motivo, temos que definir o Aplicativo da nova planilha (ou seja: a nova instância do Excel) como Visível para ver o objeto.

Em todos os exemplos acima, estamos usando Late Binding - portanto, declaramos as variáveis ​​como Objetos. Também podemos usar a vinculação antecipada definindo uma referência ao Word ou PowerPoint em nosso projeto VBA e, em seguida, escrevendo o procedimento Sub conforme mostrado abaixo. Para entender mais sobre a vinculação tardia e antecipada, clique aqui.

Em primeiro lugar, para Early Binding, dentro do VBE, definimos uma referência para o Microsoft Word.

No Cardápio barra, selecione Ferramentas> Referências e role para baixo para encontrar a referência ao Biblioteca de objetos do Microsoft Word 16.0.

Certifique-se de que a referência esteja marcada e clique em OK.

NOTA: a versão pode não ser 16.0, tudo depende de qual versão do Microsoft Office você está executando no seu PC!

Agora, declaramos o objeto usando Early Binding - isso significa que, em vez de declarar o wdApp como um objeto, o declaramos como um Word.Application. O resto do código é o mesmo de quando usamos Late Binding acima.

12345 Sub CreateWordInstance ()Dim wdApp As New Word.ApplicationDefina wdApp = CreateObject ("Word.Application")wdApp.Visible = TrueEnd Sub

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave