Hallo, Möchte per VBA prüfen, ob Zeile 4-10 eingeblendet sind, dann diese ausblenden und wenn diese Zeilen ausgeblendet sind , dann diese einblenden?
3 Antworten
Hallo,
Da du schon früher Fragen zu Makros gestellt hast, gehe ich mal davon aus, dass du mit einer einfachen IF - ELSE Abfrage umgehen kannst und lediglich die Info suchst, wie man ausgeblendete Zeilen abfragt.
Rows("4:10").Hidden = True
LG, Chris
wobei ich mir nie merken kann, wann es hidden=true und wann visible=false heißt. Ich mach das dann auch immer - wie Subopt vorschlägt - per Probeaufzeichnung (manchmal funktioniert auch die Kontext-Vorschlags-Liste, aber komischerweise nicht immer.)
Ich würde mir ein Makro aufzeichnen, die Spalten aus- und einblenden und dann schauen, welche Eigenschaft verändert wurde, diese Fragst du in deinem Code dann ab und ahmst den aufgezeichneten Einblendungsbefehl nach.
Daumen hoch - ich halte diese Anleitungen zur Selbsthilfe für weit produktiver als Lösungen für den Einzelfall.
Ich denke auch, Du solltest es erst mal selber versuchen.
Wenn Du nicht klar kommst oder weitere Tipps brauchst melde Dich nochmal.
Notfalls werde ich Dir den simplen Code aber auch zur Verfügung stellen.
Bist du sicher, dass der in diesem Fall funktioniert? ich krieg mit 1-... Probleme beim Wiedereinblenden, (tut einfach nicht ohne Fehlermeldung), selbst bei nur einer Zeile, egal, ob ich Selection, Activesheet.Range(), row, rows oder entirerow nehme!
Hast Du eine andere Lösung?
Private Sub CommandButton1_Click()
Rows("4:10").Hidden = Not Rows("4:10").Hidden
End Sub
P.S.: Die Tipps die Du schon erhalten hast, führen zu einer Lösung per IF-Bedingung.
Allerdings lässt sich die Aufgabe auch mit nur einer einzigen Programmzeile ohne IF-Abfrage lösen.
Wenn das eine Schulaufgabe ist, wird aber eher die IF-Lösung gesucht sein.
Auf Anfrage verrate ich aber auch den Einzeiler. 🙂