Função CreateObject

Importante :  Este artigo foi traduzido por um sistema de tradução automática, leia o aviso de isenção de responsabilidade. Para sua referência, veja a versão em inglês deste artigo aqui.

Observação : A função, método, objeto ou propriedade descrito neste tópico será desabilitada se o Microsoft Jet Expression Service está em execução no modo de área restrita, o que impede a avaliação das expressões possivelmente não seguras. Para obter mais informações sobre o modo seguro, procure por "modo seguro" na Ajuda.

Cria e retorna uma referência a um objeto ActiveX.

Sintaxe

CreateObject ( classe [, nomedoservidor] )

A sintaxe da função CreateObject possui os seguintes argumentos:

Argumento

Descrição

classe

Necessário. Variant (Cadeia). O nome do aplicativo e a classe do objeto para criar.

nomedoservidor

Opcional. Variant (Cadeia). O nome do servidor de rede onde o objeto será criado. Se nomedoservidor é uma cadeia de caracteres vazia (""), o computador local é usado.


A classeargumento usa a sintaxe appname.objecttype e tem estas partes:

Parte

Descrição

appname

Necessário. Variant (Cadeia). O nome do aplicativo fornecendo o objeto.

objecttype

Necessário. Variant (Cadeia). O tipo ou classe do objeto para criar.


Comentários

Todos os aplicativos que oferece suporte à automação fornece pelo menos um tipo de objeto. Por exemplo, um aplicativo de processamento de texto pode fornecer um objeto de aplicativo , um objeto de documento e um objeto de barra de ferramentas .

Para criar um objeto ActiveX, atribua o objeto retornado por CreateObject a uma variável de objeto:

Observação : Exemplos a seguir demonstram o uso dessa função em um Visual Basic para módulo Applications (VBA). Para obter mais informações sobre como trabalhar com o VBA, selecione a Referência do desenvolvedor na lista suspensa ao lado de pesquisa e insira um ou mais termos na caixa de pesquisa.

' Declare an object variable to hold the object 
' reference. Dim as Object causes late binding.
Dim ExcelSheet As Object
Set ExcelSheet = CreateObject("Excel.Sheet")

Esse código inicia o aplicativo criando o objeto, nesse caso, uma planilha de Microsoft Office Excel 2007. Depois que um objeto é criado, você se referir a ele no código usando a variável de objeto que você definiu. No exemplo a seguir, você acessa propriedades e métodos do novo objeto usando a variável de objeto, ExcelSheete outros objetos do Excel, incluindo o objeto Application e a coleção de Cells .

' Make Excel visible through the Application object.
ExcelSheet.Application.Visible = True
' Place some text in the first cell of the sheet.
ExcelSheet.Application.Cells(1, 1).Value = "This is column A, row 1"
' Save the sheet to C:\test.xls directory.
ExcelSheet.SaveAs "C:\TEST.XLS"
' Close Excel with the Quit method on the Application object.
ExcelSheet.Application.Quit
' Release the object variable.
Set ExcelSheet = Nothing

Declarar uma variável de objeto com a cláusula As Object cria uma variável que pode conter uma referência a qualquer tipo de objeto. No entanto, o acesso ao objeto através dessa variável é vinculado posteriormente; Isto é, a associação ocorre quando o programa é executado. Para criar uma variável de objeto que resulte em vinculação antecipada, ou seja, vinculação quando o programa é compilado, declare a variável de objeto com uma identificação de classe específica. Por exemplo, você pode declarar e criar as seguintes referências do Excel:

Dim xlApp As Excel.Application 
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.WorkSheet
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Add
Set xlSheet = xlBook.Worksheets(1)

A referência através de uma variável vinculada antecipadamente pode resultar em melhor desempenho, mas só pode conter uma referência para o classe especificado na declaração.

Você pode passar um objeto retornado pela função CreateObject para uma função esperando um objeto como um argumento. Por exemplo, o código a seguir cria e passa uma referência a um objeto Application:

Call MySub (CreateObject("Excel.Application"))

Você pode criar um objeto em um computador de rede remoto passando o nome do computador para o argumento NomeServidor de CreateObject. Esse nome é a mesma que a parte do nome da máquina de um nome de compartilhamento: para um compartilhamento chamado "\\MyServer\Public", nomedoservidor é "Meuservidor."

Observação : Consulte a documentação COM (consulte Microsoft Developer Network) para obter informações adicionais sobre como tornar um aplicativo visível em um computador remoto de rede. Você talvez precise adicionar uma chave do registro para o seu aplicativo.

O código a seguir retorna o número da versão de uma instância do Excel em execução em um computador remoto chamado MyServer:

Dim xlApp As Object
Set xlApp = CreateObject("Excel.Application", "MyServer")
Debug.Print xlApp.Version

Se o servidor remoto não existe ou não estiver disponível, ocorrerá um erro de tempo de execução.

Observação : Use CreateObject quando houver nenhuma instância atual do objeto. Se já estiver executando uma instância do objeto, uma nova instância é iniciada e será criado um objeto do tipo especificado. Para usar a instância atual, ou para iniciar o aplicativo e fazer com que ele carregar um arquivo, use a função GetObject .

Se um objeto registrou ele mesmo como um objeto de instância única, apenas uma instância do objeto é criada, não importa quantas vezes CreateObject é executado.

Exemplo

Este exemplo usa a função CreateObject para definir um (de referência

xlApp

) para o Excel. Ele usa a referência para acessar a propriedade Visible do Excel e, em seguida, utilize o método de Excel Sair para fechá-lo. Por fim, a própria referência é lançada.

Dim xlApp As Object    ' Declare variable to hold the reference.
Set xlApp = CreateObject("excel.application")
' You may have to set Visible property to True
' if you want to see the application.
xlApp.Visible = True
' Use xlApp to access Microsoft Excel's
' other objects.
xlApp.Quit ' When you finish, use the Quit method to close
Set xlApp = Nothing ' the application, then release the reference.

Observação : Aviso de Isenção de Tradução Automática: Este artigo foi traduzido por computador, sem intervenção humana. A Microsoft oferece essas traduções automáticas para ajudar as pessoas que não falam inglês a aproveitar os textos escritos sobre produtos, serviços e tecnologias da Microsoft. Como este artigo foi traduzido automaticamente, é possível que contenha erros de vocabulário, sintaxe ou gramática.

Expanda suas habilidades
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Office Insider

Essas informações foram úteis?

Obrigado por seus comentários!

Agradecemos pelos seus comentários! Parece que pode ser útil conectar você a um de nossos agentes de suporte do Office.

×