Mam dość prosty VBA w programie Word 2003, który zmienia czcionkę dokumentu na "eko czcionki" (długa historia) i wyświetla okno dialogowe Drukuj.Przeczytaj historię cofania w języku VBA
Gdy użytkownik uderza Anuluj lub OK, kod wykonuje "cofnij", aby przywrócić zmianę.
Problem polega na tym, że czasami po naciśnięciu przycisku "OK", aby wydrukować dokument, należy anulować dwie czynności: "zmiana czcionki" i "zaktualizuj pola". Nie mogę przewidzieć, kiedy to nastąpi.
Czy istnieje sposób na odczytanie ostatniego elementu z bufora cofania Worda? W ten sposób mogę po prostu naciskać Cofnij, aż zmiana czcionki zostanie zakończona.
Edit: kod końcowy (wycięte):
ActiveDocument.Range.Bookmarks.Add ("_tempEcoUndoStart_")
ActiveDocument.Content.Font.Name = "Nanonymus Eco Sans"
Dialogs(wdDialogFilePrint).Show
While ActiveDocument.Bookmarks.Exists("_tempEcoUndoStart_")
ActiveDocument.Undo
Wend
I oczywiście nie mogę po prostu zmienić czcionkę z powrotem, ponieważ mogą być one przy użyciu wielu czcionek w dokumencie. – ChristianLinnell