VBA CreateObject (Создать объект)

Содержание

В этой статье показано, как использовать метод Create Object в VBA.

VBA - это объектно-ориентированный язык - он использует процедуры для управления и создания объектов.

Создать объект

Мы можем использовать метод Create Object для создания объекта в приложении Microsoft Office. Например, если мы пишем код VBA в Excel и хотим открыть копию Word, мы можем использовать метод Create Object для создания нового экземпляра Word.

Например:

12345 Sub CreateWordInstance ()Dim wdApp как объектУстановите wdApp = CreateObject ("Word.Application")wdApp.Visible = ВерноКонец подписки

Точно так же мы можем создать новый экземпляр PowerPoint или Access.

12345 Sub CreatePowerPointApplicationDim ppApp как объектУстановите ppApp = CreateObject ("PowerPoint.Application")ppApp.Visible = TrueКонец подписки

Мы также можем использовать Create Object для создания объектов, отличных от Application Object. Мы можем использовать его, например, для создания листа Excel.

1234567 Подложка CreateExcelSheet ()Dim xlSheet как объектУстановите xlSheet = CreateObject ("Excel.Sheet").xlSheet.Application.Visible = ИстинаxlSheet.Application.Range ("A2") = "Доброе утро"Установите xlSheet = NothingКонец подписки

Однако при этом фактически создается новый экземпляр Excel - лист не создается в уже открытом экземпляре. По этой причине мы должны установить для приложения нового листа (т. Е. Нового экземпляра Excel) значение Visible, чтобы увидеть объект.

Во всех приведенных выше примерах мы используем позднее связывание, поэтому мы объявляем переменные как объекты. Мы также можем использовать Early Binding, установив ссылку на Word или PowerPoint в нашем проекте VBA, а затем написав подпроцедуру, как показано ниже. Чтобы узнать больше о позднем и раннем связывании, щелкните здесь.

Во-первых, для раннего связывания в VBE мы устанавливаем ссылку на Microsoft Word.

в Меню бар, выберите Инструменты> Ссылки и прокрутите вниз, чтобы найти ссылку на Библиотека объектов Microsoft Word 16.0.

Убедитесь, что ссылка отмечена, а затем нажмите OK.

ПРИМЕЧАНИЕ: версия может быть не 16.0, все зависит от того, какую версию Microsoft Office вы используете на своем ПК!

Теперь мы объявляем объект с использованием раннего связывания - это означает, что вместо объявления wdApp как объекта мы объявляем его как Word.Application. Остальная часть кода такая же, как и при использовании позднего связывания выше.

12345 Sub CreateWordInstance ()Dim wdApp как новое приложение Word.ApplicationУстановите wdApp = CreateObject ("Word.Application")wdApp.Visible = ВерноКонец подписки

Вы поможете развитию сайта, поделившись страницей с друзьями

wave wave wave wave wave