Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1948to1952
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Tabellenblätter automatisch schließen

Tabellenblätter automatisch schließen
20.10.2023 23:22:07
Hide Seek
Hallo zusammen,

ich möchte gerne von einer Startseite auf ausgeblendete Tabellenblätter zugreifen. Und wenn sich dann das Tabellenblatt öffnet, und ich wieder auf Blatt "Startseite" klicke, dann soll sich das zuvor geöffnete Blatt wieder schließen.

Ich habe von chatgpt diesen Code:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim ws As Worksheet
Dim TargetSheetName As String

' Das Tabellenblatt, das immer geöffnet bleiben soll (hier "Startseite" genannt)
TargetSheetName = "Startseite"

' Überprüfen, ob das aktivierte Blatt nicht das "Startseite"-Tabellenblatt ist
If Sh.Name > TargetSheetName Then
' Schließen Sie alle anderen Tabellenblätter
For Each ws In ThisWorkbook.Sheets
If ws.Name > Sh.Name And ws.Name > TargetSheetName Then
ws.Visible = xlSheetHidden
End If
Next ws
End If
End Sub

Aber es geht nicht. Habe verschieden Optionen durchprobiert, aber entweder schließen sich alle Blätter außer das aktive, oder eben keins.
Ich arbeite mit excel 365 auf MacOS.

Vielleicht kann mir jemand helfen.
LG

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblätter automatisch schließen
20.10.2023 23:40:03
Piet
Hallo

schau dir bitte deinen Code einmal genau an. Fällt dir dabei etwas auf (was ich sehe)
Du hast zwar eine If Anweisung mit Sh.Name, aber nirgendwo ist Sh als Objekt deklariert!
Ersetze doch Sh.Name einfach mal durch AktiveSheet.Name, dann sollte es klappen.

mfg Piet
AW: Tabellenblätter automatisch schließen
20.10.2023 23:58:28
Hide Seek
Hallo,
danke für die schnelle Antwort.

Ich habe leider keine Ahnung was ich ersetzen soll.
Der Code stammt ja von chatgpt ;)
Also du meinst jedes sh.name durch Aktive.name oder ist das die Variable für "Startseite"?
AW: Tabellenblätter automatisch schließen
21.10.2023 00:11:11
onur
Der ganze Code gehört in die "Sub Workbook_SheetDeactivate" und nicht "Sub Workbook_SheetActivate", denn:
Wenn alle Blättter (ausser Startseite) versteckt sind, wie willst du sie denn aktivieren können?
Ausserdem: Sh braucht nicht nochmal deklariert werden, dass wird schon durch "ByVal Sh As Object" erledigt.
Anzeige
AW: Tabellenblätter automatisch schließen
21.10.2023 00:40:09
Hide Seek
also wenn ich Deactivate schreibe, dann geht es gar nicht mehr.
AW: Tabellenblätter automatisch schließen
21.10.2023 00:41:57
onur
Wenn alle Blätter ausgeblendet sind, wie öffnest du denn eins davon?
AW: Tabellenblätter automatisch schließen
21.10.2023 01:36:31
Hide Seek
Ja genauso meinte ich das.
Wenn ich das in einer neuen Mappe "nachbaue" funktioniert es ohne Probleme.
Aber in meinem vorhandenen Projekt irgendwie nicht.
Überlagern sich vielleicht Prozesse?
Naja danke trotzdem :-)
AW: Tabellenblätter automatisch schließen
21.10.2023 01:39:23
onur
"Aber in meinem vorhandenen Projekt irgendwie nicht. " - wahrscheinlich Problem mit anderen Makros aus deinen früheren Versuchen, die du aber noch nicht gelöscht hast.
Anzeige
AW: Tabellenblätter automatisch schließen
21.10.2023 19:04:15
Piet
Hallo

läuft deine Datei jetzt, oder brauchst du noch Hilfe. Falls ja, lade dir bitte meine Beispieldatei herunter.
Tabellenblatt mit externer Datei verknüpfen - Jenny333 20.10.2023 18:41:36
In diesem Thread findest du eine Datei zum auflisten aller Makrocodes.

Du musst nur deinen Ordnerpfad in Zelle C1 eingeben, in Zelle F2 das Ja löschen, und den Cursor auf die Datei setzen, die du auflisten willst.
Dann kannst du uns das Blatt hochladen, und wir sehen alle Makrocodes die in deiner Datei vorhanden sind.

mfg Piet

AW: Tabellenblätter automatisch schließen
21.10.2023 19:42:56
Hide Seek
Also ich habe die Startseite komplett gelöscht und nochmal neu erstellt und jetzt funktioniert es mit dem code von Onur. Ich weiß alelrdings nicht wo genau das Problem vorher war
Ganz lieben Dank nochmal. :-)
Anzeige
Gerne !
21.10.2023 19:46:31
onur
Vermutlich hattest du das Sheet_Change des Workbook UND das Change-Event des Blattes benutzt (oder Sheet_Activate o.Ä.) , die sich dann natürlich in die Quere kamen.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige