Funcția CreateObject

Notă: Dorim să vă oferim cel mai recent conținut de ajutor, cât mai rapid posibil, în limba dvs. Această pagină a fost tradusă automatizat și poate conține erori gramaticale sau inexactități. Scopul nostru este ca acest conținut să vă fie util. Vă rugăm să ne spuneți dacă informațiile v-au fost utile, în partea de jos a acestei pagini. Aici se află articolul în limba engleză, ca să îl puteți consulta cu ușurință.

Notă: Funcția, metoda, obiectul sau proprietatea descrisă în acest subiect este dezactivată dacă serviciul Microsoft Jet Expression rulează în modul sandbox, ceea ce împiedică evaluarea expresiilor potențial nesigure. Pentru mai multe informații despre modul sandbox, căutați "mod sandbox" în ajutor.

Creează și returnează o referință la un obiect ActiveX.

Sintaxă

Funcția ( Class [, ul ))

Sintaxa funcției funcția are următoarele argumente:

Argument

Descriere

clasă

Obligatoriu. Variant (Șir). Numele aplicației și clasa obiectului de creat.

numeserver

Opțional. Variant (Șir). Numele serverului de rețea în care se va crea obiectul. Dacă este un șir de caractere gol (""), se utilizează computerul local.


Clasa argument utilizează sintaxa AppName.tipobiect și are următoarele componente:

Parte

Descriere

AppName

Obligatoriu. Variant (Șir). Numele aplicației care furnizează obiectul.

tipobiect

Obligatoriu. Variant (Șir). Tipul sau clasă obiectului de creat.


Observații

Fiecare aplicație care acceptă automatizare oferă cel puțin un tip de obiect. De exemplu, o aplicație de procesare Word poate furniza un obiect aplicație , un obiect document și un obiect din bara de instrumente .

Pentru a crea un obiect ActiveX, atribuiți obiectul returnat de funcția la o variabilă obiect:

Notă: Exemplele care urmează demonstrează utilizarea acestei funcții într-un modul Visual Basic for Applications (VBA). Pentru mai multe informații despre lucrul cu VBA, selectați Referințe pentru dezvoltatori în lista verticală de lângă Căutare și introduceți unul sau mai mulți termeni în caseta de căutare.

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

În acest exemplu, vom automatiza un obiect foaie de calcul Excel din cadrul unei baze de date Access. Acest cod pornește aplicația care creează obiectul, în acest caz, o foaie de calcul Microsoft Excel. După ce este creat un obiect, faceți referire la acesta în cod utilizând variabila de obiect definită. În exemplul următor, accesați proprietățile și metodele obiectului nou utilizând variabila obiect, ExcelSheetși alte obiecte Excel, inclusiv obiectul Application și colecția 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

Declararea unei variabile de obiect cu clauza As Object creează o variabilă care poate conține o referință la orice tip de obiect. Cu toate acestea, accesul la obiect prin acea variabilă este legat cu întârziere; de aceea, legarea are loc atunci când rulează programul. Pentru a crea o variabilă de obiect care are ca rezultat legarea timpurie, adică obligatoriu atunci când programul este compilat, declarați variabila obiect cu un anumit ID de clasă. De exemplu, puteți să declarați și să creați următoarele referințe 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)

Referința printr-o variabilă legată la început poate oferi o performanță mai bună, dar poate conține doar o referință la clasă specificată în declarație.

Puteți trece un obiect returnat de funcția funcția la o funcție care așteaptă un obiect ca argument. De exemplu, următorul cod creează și trece o referință la un obiect Excel. Application:

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

Puteți crea un obiect pe un computer la distanță, trecând de numele computerului la argumentul de funcția. Acest nume este identic cu porțiunea nume mașină a unui nume de partajare: pentru o partajare numită "\\MyServer\Public", "MyServer".

Notă:  Consultați documentația COM (consultați rețeaua Microsoft Developer) pentru informații suplimentare despre cum se face o aplicație vizibilă pe un computer la distanță din rețea. Poate fi necesar să adăugați o cheie de registry pentru aplicație.

Următorul cod returnează numărul de versiune al unei instanțe din Excel care funcționează pe un computer la distanță, denumit MyServer:

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

Dacă serverul la distanță nu există sau nu este disponibil, apare o eroare de rulare.

Notă:  Utilizați funcția atunci când nu există nicio instanță curentă a obiectului. Dacă o instanță a obiectului rulează deja, se pornește o instanță nouă și se creează un obiect cu tipul specificat. Pentru a utiliza instanța curentă sau pentru a porni aplicația și a încărca un fișier, utilizați funcția GetObject .

Dacă un obiect s-a înregistrat ca obiect cu o singură instanță, se creează o singură instanță a obiectului, indiferent de câte ori este executat funcția .

Exemplu

Acest exemplu utilizează funcția funcția pentru a seta o referință (

xlApp

) în Excel. Utilizează referința pentru a accesa proprietatea vizibilă din Excel, apoi utilizează metoda de ieșire Excel pentru a o închide. În cele din urmă, referința însăși este lansată.

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.
Extindeți-vă competențele Office
Explorați instruirea
Fiți primul care obține noile caracteristici
Alăturați-vă utilizatorilor Office Insider