Discussion:
Back-Funktion
(zu alt für eine Antwort)
Dominik
2004-01-28 14:06:27 UTC
Permalink
Hallo NG

Ich habe in einer Arbeitsmappe verschiedene Datenblätter,
wo ich per Button von einer zur anderen springen kann. Da
ich aber mit der Zeit nicht mehr weiss wo ich vorher war,
will ich noch ein Back-Button machen. Mit dem soll man
einfach zum letzten besuchten Datenblatt gelangen können.
(wie im InternetExplorer das 'zurück')
Wie kann ich mit VBA einen zurück-Button programmieren?

Besten Dank aus Basel
Dominik
Martin Fischer
2004-01-28 15:57:16 UTC
Permalink
Hallo Dominik,
Post by Dominik
Hallo NG
will ich noch ein Back-Button machen. Mit dem soll man
einfach zum letzten besuchten Datenblatt gelangen können.
(wie im InternetExplorer das 'zurück')
Wie kann ich mit VBA einen zurück-Button programmieren?
Dies ist z. B. mit folgendem Code möglich:
In jedem Tabellenblatt platzierst Du folgende Ereignisprozedur:
Private Sub Worksheet_Deactivate()
SetWorksheet Me
End Sub

In einem seperaten Codemodul speicherst Du folgende 2 Prozeduren:
Private ws As Worksheet

Public Sub SetWorksheet(ByRef wsNew As Worksheet)
Set ws = wsNew
End Sub

Public Function GetWorksheet() As Worksheet
Set GetWorksheet = ws
End Function

Zudem die modulweit gültige Variable ws.

Hinter Deinem Back-Button hinterlegst Du folgenden Code:
Private Sub CommandButton1_Click()
GetWorksheet.Activate
End Sub

Damit hast Du schon Deinen Back-Button. Kurze Erklärung: Wenn ein
Benutzer das Tabellenblatt verlässt, wird die Referenz dazu mittels der
Prozedur SetWorksheet in der Variable ws gespeichert. Sobald der
Benutzer den Back Button betätigt, wird diese Referenz wieder abgerufen
mittels GetWorksheet. Dann musst Du dieses Worksheet wieder aktivieren,
fertig.

Gruss
Martin Fischer

Lesen Sie weiter auf narkive:
Loading...