Добавление кнопки в документ Word и назначение события Click во время выполнения

Аннотация

В этой статье показано, как использовать макрос Microsoft Visual Basic для приложений для программного добавления элемента управления в документ Microsoft Word и добавления обработчика событий Click для этого элемента управления.

Дополнительная информация

Ниже показано, как создать макрос Word, который добавит элемент управления в документ и назначит событие Click этого элемента управления во время выполнения. Действия предназначены для Word. Тем не менее для программного управления элементами управления в книгах Microsoft Excel можно применить те же основные понятия.

Примечание.

Для управления проектом Visual Basic документа Microsoft Office во время выполнения требуется ссылка на библиотеку расширяемости microsoft Visual Basic для приложений.

Действия по созданию примера

  1. Запустите новый документ в Word.

  2. Нажмите клавиши ALT+F11, чтобы перейти в редактор Visual Basic.

  3. В меню Сервис выберите пункт Ссылки.

  4. Выберите ссылку на microsoft Visual Basic для приложений расширяемости.

  5. Вставьте новый модуль и добавьте следующий пример кода.

    Sub Test()
    
    'Add a command button to a new document
    Dim doc As Word.Document
    Dim shp As Word.InlineShape
    Set doc = Documents.Add
    
    Set shp = doc.Content.InlineShapes.AddOLEControl(ClassType:="Forms.CommandButton.1")
    shp.OLEFormat.Object.Caption = "Click Here"
    
    'Add a procedure for the click event of the inlineshape
    '**Note: The click event resides in the This Document module
    Dim sCode As String
    sCode = "Private Sub " & shp.OLEFormat.Object.Name & "_Click()" & vbCrLf & _
            "   MsgBox ""You Clicked the CommandButton""" & vbCrLf & _
            "End Sub"
    doc.VBProject.VBComponents("ThisDocument").CodeModule.AddFromString sCode
    
    End Sub
    
  6. Запустите макрос "Тест".

  7. После завершения выполнения макроса Test в новом документе отобразится новый элемент управления CommandButton . Если щелкнуть элемент управления CommandButton , срабатывает событие Click элемента управления.

Дополнительные заметки для Word 2002 и Word 2003

По умолчанию доступ к проекту Word VBA отключен. Если этот код отключен, приведенный выше код может создать ошибку времени выполнения "6068", "Программный доступ к проекту Visual Basic не является доверенным". Чтобы получить дополнительные сведения об этой ошибке и способах ее исправления, щелкните номер следующей статьи, чтобы просмотреть статью в базе знаний Майкрософт:

282830 . Программный доступ к проекту Office VBA запрещен