Ho un VBA piuttosto semplice in Word 2003 che cambia il carattere del documento in un "carattere eco" (lunga storia) e apre la finestra di dialogo Stampa.Leggere la cronologia degli annullamenti in VBA
Quando un utente fa clic su Annulla o OK, il codice esegue un "annullamento" per annullare la modifica.
Il problema è che a volte quando si preme "OK" per stampare il documento, è necessario annullare due azioni ("modifica carattere" e "campi aggiornamento"). Non riesco a prevedere quando succederà.
C'è un modo per leggere l'ultimo elemento nel buffer di annullamento di Word? In questo modo posso semplicemente continuare a premere annulla fino a quando il cambiamento di carattere è stato completato.
Edit: codice finale (ridurre):
ActiveDocument.Range.Bookmarks.Add ("_tempEcoUndoStart_")
ActiveDocument.Content.Font.Name = "Nanonymus Eco Sans"
Dialogs(wdDialogFilePrint).Show
While ActiveDocument.Bookmarks.Exists("_tempEcoUndoStart_")
ActiveDocument.Undo
Wend
E ovviamente non può semplicemente cambiare il tipo di carattere indietro, perché essi potrebbero utilizzare più tipi di carattere in un documento. – ChristianLinnell