Hinzufügen einer Schaltfläche zu einem Word-Dokument und Zuweisen des Zugehörigen Click-Ereignisses zur Laufzeit
Zusammenfassung
In diesem Artikel wird veranschaulicht, wie Sie ein Microsoft Visual Basic for Applications-Makro verwenden können, um programmgesteuert ein Steuerelement zu einem Microsoft Word-Dokument hinzuzufügen und einen Click-Ereignishandler für dieses Steuerelement hinzuzufügen.
Weitere Informationen
Die folgenden Schritte veranschaulichen, wie Sie ein Word-Makro erstellen können, mit dem einem Dokument ein Steuerelement hinzugefügt und das Click-Ereignis dieses Steuerelements zur Laufzeit zugewiesen wird. Die Schritte gelten für Word. Sie können jedoch dieselben Konzepte anwenden, um Steuerelemente in Microsoft Excel-Arbeitsmappen programmgesteuert zu bearbeiten.
Hinweis
Die Möglichkeit, das Visual Basic-Projekt eines Microsoft Office-Dokuments zur Laufzeit zu bearbeiten, erfordert einen Verweis auf die Microsoft Visual Basic for Applications-Erweiterbarkeitsbibliothek.
Schritte zum Erstellen des Beispiels
Starten Sie ein neues Dokument in Word.
Drücken Sie ALT+F11, um zum Visual Basic-Editor zu wechseln.
Klicken Sie im Menü Extras auf Verweise.
Wählen Sie den Verweis für Microsoft Visual Basic for Applications Erweiterbarkeit aus.
Fügen Sie ein neues Modul ein, und fügen Sie dann das folgende Codebeispiel hinzu.
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
Führen Sie das Makro "Test" aus.
Sobald das Makro "Test" abgeschlossen ist, wird ein neues CommandButton-Steuerelement in einem neuen Dokument angezeigt. Wenn Sie auf das CommandButton-Steuerelement klicken, wird das Click-Ereignis des Steuerelements ausgelöst.
Weitere Hinweise zu Word 2002 und Word 2003
Standardmäßig ist der Zugriff auf ein Word-VBA-Projekt deaktiviert. Wenn dies deaktiviert ist, generiert der obige Code möglicherweise den Laufzeitfehler "6068", "Programmgesteuerter Zugriff auf Visual Basic-Projekt ist nicht vertrauenswürdig". Weitere Informationen zu diesem Fehler und dazu, wie Sie ihn beheben können, finden Sie in der Microsoft Knowledge Base:
282830 Der programmgesteuerte Zugriff auf das Office VBA-Projekt wird verweigert.