Freigeben über


Application.Undo-Methode (Visio)

Kehrt die letzte Rückgängig-Komponente um, wenn die Rückgängig-Komponente umgekehrt werden kann.

Syntax

Ausdruck. Rückgängig

expression Eine Variable, die ein Application-Objekt darstellt.

Rückgabewert

Nichts

Bemerkungen

Verwenden Sie die Undo-Methode, um die Aktionen einer Rückgängig-Komponente umzukehren.

Die Häufigkeit, mit der der Code die Undo-Methode aufrufen kann, hängt davon ab, ob der Code im Bereich einer geöffneten Rückgängig-Komponente ausgeführt wird. In den folgenden Fällen wird der Code im Bereich einer geöffneten Rückgängig-Komponente ausgeführt:

  • Ein von der Microsoft Visio-Benutzeroberfläche aufgerufenes Makro oder Add-On.

  • Wenn es sich bei dem Code um einen Ereignishandler handelt, der auf ein anderes Visio-Ereignis außer VisioIsIdle reagiert.

  • Einen Bestandteil eines vom Benutzer erstellten Rückgängig-Bereichs.

Wenn Code nicht im Bereich einer offenen Rückgängig-Einheit ausgeführt wird, kann die Undo-Methode für jede Rückgängig-Einheit aufgerufen werden, die derzeit im Visio-Rückgängig-Stapel ausgeführt wird. Sie können die maximale Anzahl von Einheiten für den Rückgängig-Stapel (20 ist die Standardeinstellung) auf der Registerkarte Erweitert des Dialogfelds Visio-Optionen festlegen (klicken Sie auf die Registerkarte Datei , und klicken Sie dann auf Optionen). Wenn die Anzahl der Aufrufe der Undo-Methode die Anzahl der Rückgängig-Einheiten auf dem Stapel überschreitet, wird keine Aktion ausgeführt, und die Undo-Methode löst keine Ausnahme aus.

Wenn Code im Bereich einer geöffneten Rückgängig-Komponente ausgeführt wird, kann die Undo-Methode einmal für jeden Vorgang in der geöffneten Rückgängig-Komponente ausgeführt werden. Wenn es zusätzliche Aufrufe der Undo-Methode gibt, wird eine Ausnahme ausgelöst und keine Aktion ausgeführt. Wenn z. B. der Code in einem Makro zwei Vorgänge ausführt, kann die Undo-Methode zweimal aufgerufen werden. Wenn das Makro die Undo-Methode zum dritten Mal aufruft, löst die Undo-Methode eine Ausnahme aus.

Code, der die Undo-Methode im Bereich einer Rückgängig-Komponente aufruft, kann nicht die Redo-Methode aufrufen, um die Aktion umzukehren. Die Redo-Methode kann nur aufgerufen werden, wenn keine geöffneten Rückgängig-Komponenten vorhanden sind.

Von der Undo-Methode wird auch eine Ausnahme ausgelöst, wenn die Visio-Instanz gerade eine Rückgängig- oder Wiederholen-Aktion ausführt. Verwenden Sie die IsUndoingOrRedoing-Eigenschaft , um zu bestimmen, ob die Visio-Instanz rückgängig oder wiederholt wird.

Sie können die Undo-Methode über den VisioIsIdle-Ereignishandler aufrufen, da das VisioIsIdle-Ereignis nur ausgelöst werden kann, wenn die IsUndoingOrRedoing-Eigenschaft False ist. Sie können die Undo-Methode auch über Code aufrufen, der nicht von einer Visio-Instanz aufgerufen wurde, z. B. Code, der vom Visual Basic-Editor oder von einem externen Programm aufgerufen wurde.

Sie können die meisten Aktionen rückgängig machen, aber nicht alle. Verwenden Sie zum Umkehren der Auswirkungen der Redo-Methode die Undo-Methode.

Beispiel

Mit diesem VBA-Makro (Microsoft Visual Basic für Applikationen) wird gezeigt, wie Aktionen rückgängig gemacht und wiederholt werden.

 
Public Sub Undo_Example()  
 
    Dim vsoShape As Visio.Shape  
 
    'Draw a rectangle, use Undo to delete it, and  
    'then use Redo to redraw it. 
    Set vsoShape = ActivePage.DrawRectangle(1, 5, 5, 1) 
  
    'Delete the shape.  
    Visio.Application.Undo  
     
    'Bring it back.  
    Visio.Application.Redo  
 
End Sub

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.