Document.XMLAfterInsert-Ereignis (Word)
Tritt ein, wenn ein Benutzer ein neues XML-Element zu einem Dokument hinzufügt. Wenn mehrere Elemente gleichzeitig zu einem Dokument hinzugefügt werden (z. B. beim Ausschneiden und Einfügen von XML), wird das Ereignis für jedes eingefügte Element ausgelöst.
Syntax
Ausdruck. XMLAfterInsert'(NewXMLNode**, InUndoRedo)
Ausdruck Eine Variable, die ein Document-Objekt darstellt, das mithilfe des WithEvents-Schlüsselwort (keyword) in einem Klassenmodul deklariert wurde. Informationen zur Verwendung von Ereignissen mit einem Document-Objekt finden Sie unter Verwenden von Ereignissen mit dem Document-Objekt.
Parameter
Name | Erforderlich/Optional | Datentyp | Beschreibung |
---|---|---|---|
NewXMLNode | Erforderlich | XMLNode | Der neu hinzugefügte XML-Knoten. |
InUndoRedo | Erforderlich | Boolean | True gibt an, dass die Aktion mithilfe des Befehls Rückgängig oder Wiederholen in Microsoft Word ausgeführt wurde. |
Hinweise
Wenn der InUndoRedo-Parameter True ist, ändern Sie niemals den XML-Code in einem Dokument, während die Ereignisse XMLAfterInsert und XMLBeforeDelete ausgeführt werden.
Wenn der InUndoRedo-Parameter False ist, können Sie den XML-Code im Dokument einfügen und löschen. Achten Sie jedoch darauf, dass die Ereignisse XMLAfterInsert und XMLBeforeDelete nicht versuchen, sich gegenseitig abzubrechen, was zu einer Endlosschleife führt. Sie können Endlosschleifen verhindern, indem Sie eine globale boolesche Variable verwenden und diese am Anfang des Fehlerhandlers überprüfen, wie im folgenden Beispiel gezeigt.
Dim blnIsXMLInsertRunning As Boolean
Private Sub Document_XMLAfterInsert(ByVal DeletedRange As Range, _
ByVal OldXMLNode As XMLNode, ByVal InUndoRedo As Boolean)
If blnIsXMLInsertRunning = False Then
blnIsXMLInsertRunning = True
'Insert your event code here.
Else
Exit Sub
End If
End Sub
Beispiel
Im folgenden Beispiel wird ein neu hinzugefügter Knoten überprüft. Falls der Knoten ungültig ist, wird eine Meldung angezeigt, die den Gültigkeitsfehler beschreibt.
Private Sub Document_XMLAfterInsert(ByVal NewXMLNode As XMLNode, _
ByVal InUndoRedo As Boolean)
NewXMLNode.Validate
If NewXMLNode.ValidationStatus <> wdXMLValidationStatusOK Then
MsgBox NewXMLNode.ValidationErrorText
End If
End Sub
Siehe auch
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.