Função CreateObject

Nota: Queremos fornecer-lhe os conteúdos de ajuda mais recentes o mais rapidamente possível e no seu idioma. Esta página foi traduzida automaticamente e pode conter erros gramaticais ou imprecisões. O nosso objetivo é que estes conteúdos lhe sejam úteis. Pode informar-nos se as informações foram úteis no final desta página? Eis o artigo em inglês para referência.

Nota: A função, método, objeto ou propriedade descritas neste tópico é desativada se o serviço do Microsoft Jet expressão estiver em execução no modo sandbox, que impede a avaliação de expressões potencialmente inseguros. Para obter mais informações sobre o modo sandbox, procure "o modo sandbox" na ajuda.

Cria e devolve uma referência a um objeto de ActiveX.

Sintaxe

CreateObject ( escolares [, nomedoservidor] )

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

Argumento

Descrição

classe

Obrigatório. Variante (Cadeia). O nome da aplicação e classe do objeto para criar.

nomedoservidor

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


A classeargumento utiliza sintaxe nome.ObjectType e tem as seguintes partes:

Parte

Descrição

nome

Obrigatório. Variante (Cadeia). O nome da aplicação que fornece o objeto.

ObjectType

Obrigatório. Variante (Cadeia). O tipo ou classe do objeto para criar.


Observações

Todas as aplicações que suporte a automatização fornece pelo menos um tipo de objeto. Por exemplo, uma aplicação de processamento de texto pode fornecer um objeto de aplicação , um objeto de documento e um objeto de barra de ferramentas .

Para criar um objeto de ActiveX, atribua o objeto devolvido pela CreateObject para um variável de objeto:

Nota: Os exemplos seguintes demonstram a utilização desta função no módulo VBA (Visual Basic for Applications). Para obter mais informações sobre trabalhar com o VBA, selecione Referência para Programadores na lista pendente junto a Procurar e introduza 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")

Este código inicia a aplicação criação do objecto, neste caso, uma folha de cálculo Microsoft Office Excel 2007. Quando um objeto estiver criado, referenciá-lo no código utilizando a variável de objeto que definiu. No exemplo seguinte, aceder propriedades e métodos de novo objeto utilizando a variável de objecto, 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 objecto com a cláusula As Object cria uma variável que pode conter uma referência a qualquer tipo de objeto. No entanto, é tardia acesso ao objecto através dessa variável; Isto é, o enlace ocorre quando o seu programa é executado. Para criar uma variável de objecto que resulta enlace inicial, ou seja, encadernação quando o programa é compilado, declarar a variável de objecto com um ID de classe específica. Por exemplo, 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 de antecipada vinculadas pode dar um melhor desempenho, mas só pode conter uma referência a classe especificado no declaração.

Pode passar um objeto devolvido pela função CreateObject a uma função que esperasse um objeto, como um argumento. Por exemplo, o código seguinte cria e transmite uma referência a um objeto do Excel. Application:

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

Pode criar um objeto num computador remoto utilizarão ao passar o nome do computador para o argumento nomedoservidor da CreateObject. Esse nome é igual a parte do nome do computador de um nome de partilha: para uma partilha com o nome "\\MyServer\Public", nomedoservidor é "Omeuservidor."

Nota: Consulte a documentação COM (consulte o artigo Microsoft Developer Network) para obter informações adicionais sobre como tornar uma aplicação visíveis num computador remoto utilizarão. Poderá ter de adicionar uma chave de registo para a sua aplicação.

O código seguinte devolve o número da versão de uma instância do Excel em execução num computador remoto com o nome 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, ocorre um erro de tempo de execução.

Nota: Utilize CreateObject quando não existe nenhuma instância atual do objeto. Se uma instância do objeto já está em execução, uma nova instância é iniciada e é criado um objeto do tipo especificado. Para utilizar a instância atual, ou para iniciar a aplicação e têm-carregar um ficheiro, utilize a função GetObject .

Se um objeto tem registado propriamente dito como um objeto de ocorrência única, apenas uma instância do objeto é criado, sem relevante quantas vezes CreateObject é executado.

Exemplo

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

xlApp

) para o Excel. Utiliza a referência para aceder a propriedade visível do Excel e, em seguida, utilize o método de Excel Sair para o fechar. Por fim, a referência própria é disponibilizada.

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.
Aumente os seus conhecimentos do Office
Explore as formações
Seja o primeiro a obter novas funcionalidades
Adira ao Office Insider

As informações foram úteis?

Obrigado pelos seus comentários!

Obrigado pelo seu feedback! Parece que poderá ser benéfico reencaminhá-lo para um dos nossos agentes de suporte do Office.

×