Excel VBA: Tabellenblätter bei gewissen Zellenwert ausblenden?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ich hab deinen Code jetzt 1:1 rüberkopiert und an meine Tabellennamen und Zellen angepasst. Das läuft problemlos. Schau nochmal, ob deine Tabellenblätter wirklich so heißen, wie sie im Code stehen. Man kann die Namen ja auch ändern.

Du kannst auch in den Direktbereich gehen (Strg+G) und da diesen Code ausführen:

for i = 1 to worksheets.Count:?worksheets(i).name:next

Damit werden alle Tabellennamen aufgelistet und du kannst die Namen vielleicht da rauskopieren.

Oder du greifst per Index auf die Tabellenblätter zu. Also anstatt 'Worksheets("Tabelle5")' benutzt du z.B. 'Worksheets(5)'. Das wäre dann einfach das fünfte Tabellenblatt, was in der Mappe ist.

Scha123f 
Fragesteller
 29.08.2022, 17:51

Die Indexangabe funktioniert tatsächlich, dnanke! Habe auch noch einen Check eingebaut, wenn es schon ausgeblendet ist (GoTo 0) und es funktioniert jetzt.

0

Es würde mich wundern, wenn man ein unsichtbares Sheet nicht erneut unsichtbar schalten kann, aber falls das das Problem sein sollte, würde ich direkt vor dem Unsichtbarschalten einmal prüfen, ob es bereits unsichtbar ist.

Der Fehler scheint ja nur beim Ausblenden aufzutreten.

Woher ich das weiß:Berufserfahrung – Programmierer
Suboptimierer  29.08.2022, 12:15

Du kannst auch probieren, mit

Worksheets("Tabelle5").Visible = xlSheetHidden

oder

Worksheets("Tabelle5").Visible = xlSheetVeryHidden

zu arbeiten.

1
Scha123f 
Fragesteller
 29.08.2022, 17:53
@Suboptimierer

Ich habe mit einer weiteren If-Formel geprüft, ob das Blatt ausgeblendet ist und wenn ja, springt er raus (GoTo 0). Ich denke das Problem ist, dass ich die Blätter aus einer anderen Liste rüber kopiert habe.

0