Een knop toevoegen aan een Word-document en de bijbehorende klikgebeurtenis tijdens runtime toewijzen

Samenvatting

In dit artikel wordt gedemonstreerd hoe u een Microsoft Visual Basic for Applications-macro kunt gebruiken om programmatisch een besturingselement toe te voegen aan een Microsoft Word-document en een click-gebeurtenishandler voor dat besturingselement toe te voegen.

Meer informatie

De volgende stappen laten zien hoe u een Word-macro kunt maken waarmee een besturingselement aan een document wordt toegevoegd en de klikgebeurtenis van dat besturingselement tijdens runtime wordt toegewezen. De stappen zijn voor Word. U kunt dezelfde concepten echter toepassen op programmatisch bewerken van besturingselementen in Microsoft Excel-werkmappen.

Opmerking

Voor de mogelijkheid om het Visual Basic-project van een Microsoft Office-document tijdens runtime te bewerken, is een verwijzing naar de uitbreidbaarheidsbibliotheek van Microsoft Visual Basic for Applications vereist.

Stappen voor het maken van het voorbeeld

  1. Een nieuw document starten in Word.

  2. Druk op Alt+F11 om naar Visual Basic Editor te gaan.

  3. Klik in het menu Extra op Verwijzingen.

  4. Selecteer de verwijzing voor Uitbreidbaarheid van Microsoft Visual Basic for Applications.

  5. Voeg een nieuwe module in en voeg vervolgens het volgende codevoorbeeld toe.

    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. Voer de macro 'Testen' uit.

  7. Zodra de macro 'Testen' is uitgevoerd, ziet u een nieuw CommandButton-besturingselement in een nieuw document. Wanneer u op het besturingselement CommandButton klikt, wordt de klik-gebeurtenis van het besturingselement geactiveerd.

Aanvullende notities voor Word 2002 en Word 2003

De toegang tot een Word VBA-project is standaard uitgeschakeld. Als deze optie is uitgeschakeld, kan de bovenstaande code de runtimefout '6068' genereren, 'Programmatische toegang tot Visual Basic Project wordt niet vertrouwd'. Voor meer informatie over deze fout en hoe u deze kunt corrigeren, klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:

282830 Programmatische toegang tot Office VBA-project is geweigerd