Функция CreateObject

Важно : Тази статия е преведена машинно – вижте отказа от отговорност. Английската версия на тази статия за справка можете да намерите тук .

Забележка : Функция, метод, обект или свойство, описани в тази тема е забранено, ако Microsoft Jet Expression Service се изпълнява в ограничителен режим, който не позволява на оценката на потенциално опасни изрази. За повече информация за ограничителен режим потърсете "ограничителен режим" в "Помощ".

Създава и връща препратка към ActiveX обект.

Синтаксис

CreateObject () клас [, име на сървър] )

Синтаксисът на функцията CreateObject има следните аргументи:

Аргумент

Описание

клас

Изисква се. Вариант (Низ). Името на приложението и клас на обекта, за да създадете.

име на сървър

По желание. Вариант (Низ). Името на мрежов сървър, където ще бъде създаден обекта. Ако име на сървъра е празен низ (""), се използва локалния компютър.


Клас аргумент използва синтаксис appname.тип на обект и има следните части:

Част

Описание

AppName

Изисква се. Вариант (Низ). Името на приложението, предоставяне на обекта.

тип на обект

Изисква се. Вариант (Низ). Тип или клас на обекта, за да създадете.


Забележки

Всяко приложение, която поддържа автоматизация предоставя поне един тип на обект. Например приложение за текстообработка може да предоставите приложение обект, обект на документ и обект на лентата с инструменти .

За да създадете ActiveX обект, присвоите обекта, върнат от CreateObject до променлива за обект:

Забележка : Примерите по-долу илюстрират използването на тази функция във Visual Basic for Applications (VBA). За повече информация относно работата с VBA изберете Справочни материали за разработчици в падащия списък до Търсене и въведете един или няколко термина в полето за търсене.

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

Този код стартира приложение, създаването на обект, в този случай Microsoft Office Excel 2007 електронна таблица. След като се създава обект, който препратка към него в код с помощта на обектна променлива сте дефинирали. В следващия пример имате достъп до свойствата и методите на новия обект, чрез обектна променлива, ExcelSheetи други обекти на Excel, включително Application обекта и 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

Деклариране на обектна променлива с As Object клауза създава променлива, която може да съдържа препратка към всякакъв тип на обекта. Въпреки това достъп до обекта чрез тази променлива закъснели е обвързана; тоест свързването възниква, когато се изпълнява програмата ви. За да създадете обектна променлива, която води до ранно обвързване, тоест обвързва, когато програмата се събира, декларира променлива за обект с ИД на определена класа. Например да декларират и да създадете следните 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)

Препратката чрез ранно обвързани променлива може да даде по-добри резултати, но може да съдържа само препратка към клас указана в декларация.

Можете да прехвърлите обект върнат от функцията CreateObject до функция, която очаква обект като аргумент. Например следния код създава и подава препратка към обект на Excel.Application:

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

Можете да създадете обект на отдалечен компютър мрежа, като подаването на името на компютъра към аргумента име на сървър на CreateObject. Това име е същото като име на машина част от име на споделяне: за споделяне, наречена "\\MyServer\Public", име на сървъра е "MyServer".

Забележка : Обърнете се към COM документация (вижте Microsoft Developer Network) за допълнителна информация за подаване на молба видими на отдалечен компютър мрежа. Може да се наложи да добавите ключ от системния регистър за вашето приложение.

Следващият код връща номера на версията на екземпляр на Excel отдалечения компютър, наречена MyServer:

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

Ако отдалеченият сървър не съществува или не е достъпна, възниква грешка по време на изпълнение.

Забележка : Използвайте CreateObject , когато няма текущия екземпляр на обекта. Ако вече се изпълнява екземпляр на обекта, се стартира нов екземпляр, и се създава обект от указания тип. За да използвате текущия екземпляр, или да стартирате приложението и да го зареждане на файл, използвайте функцията GetObject .

Ако обект самата е регистриран като обект с единствен екземпляр, само един екземпляр на обекта се създава, без значение колко пъти се изпълнява CreateObject .

Пример

Този пример използва функцията CreateObject да зададете (справка)

xlApp

) в Excel. Тя използва препратката за достъп до свойството видим на Excel и след това да използва Excel Quit метод, за да го затворите. И накрая самата препратка се издава.

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.

Забележка : Отказ от отговорност за машинен превод: Тази статия е преведена от компютърна система без човешка намеса. Microsoft предлага тези машинни преводи, за да помогне на потребителите, които не говорят английски, да се възползват от съдържанието за продукти, услуги и технологии на Microsoft. Тъй като статията е преведена машинно, е възможно да съдържа грешки в речника, синтаксиса и граматиката.

Разширете уменията си
Преглед на обучението
Получавайте първи новите функции
Присъединете се към участниците в Office Insider

Беше ли полезна тази информация?

Благодарим ви за обратната връзка!

Благодарим ви за вашата обратна връзка. Изглежда, че ще бъде полезно да ви свържем с един от нашите агенти по поддръжката на Office.

×