Evento Document.XMLAfterInsert (Word)
Ocorre quando um usuário adiciona um novo elemento XML a um documento. Se mais de um elemento for adicionado ao documento de uma vez (por exemplo, ao recortar e colar XML), esse evento é acionado para cada elemento inserido.
Sintaxe
expressão. XMLAfterInsert'(NewXMLNode**, InUndoRedo)
Expressão Uma variável que representa um objeto 'Document' que foi declarado usando a palavra-chave WithEvents em um módulo de classe. Para obter informações sobre como usar eventos com um objeto Document , consulte Usando eventos com o objeto Document.
Parâmetros
Nome | Obrigatório/Opcional | Tipo de dados | Descrição |
---|---|---|---|
NewXMLNode | Obrigatório | XMLNode | O nó XML recém-incluído. |
Inundoredo | Obrigatório | Boolean | True indica que a ação foi realizada usando o recurso Desfazer ou Refazer no Microsoft Word. |
Comentários
Se o parâmetro InUndoRedo for True, nunca altere o XML em um documento enquanto os eventos XMLAfterInsert e XMLBeforeDelete estão em execução.
Se o parâmetro InUndoRedo for False, você pode inserir e excluir o XML no documento, mas tenha cuidado para que os eventos XMLAfterInsert e XMLBeforeDelete não tentem cancelar um ao outro, gerando um loop infinito. Você pode impedir que entrará em loop infinito usando um global variável booleano e verifique se o final do manipulador de erros, conforme mostrado no exemplo a seguir.
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
Exemplo
O exemplo a seguir valida um novo nó adicionado e mostra uma mensagem descrevendo o erro de validação caso o nó não seja válido.
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
Confira também
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.