Mein Ziel ist, Spalten in Abhängigkeit eines Zelleintrages (D4:AC4) auszublenden. Das soll nach der Dateneingabe geschehen, durch Setzen eines Hakens in einer Checkbox. Für Nachbearbeitung sollen selbsverständlich die ausgeblendeten Zellen wieder einblendbar sein (Deaktivierung der Checkbox).
Mit
Dim rng As Range
Application.ScreenUpdating = 0
For Each rng In Range("D4:AC4")
Columns("D:AC").Hidden = CheckBox1.Value
Next
Application.ScreenUpdating = -1
End Sub
werden zwar die Spalten des Bereiches D:AC ausgeblendet und bei Deaktivierung wieder eingeblendet, aber auch die Spalten, die durch einen Eintrag im Bereich D4:AC4 sichtbar bleiben sollten.
Mit
Private Sub CheckBox1_Click()
Dim rng As Range
Application.ScreenUpdating = 0
For Each rng In Range("D4:AC4")
rng.EntireColumn.Hidden = rng.Value = ""
Next
Application.ScreenUpdating = -1
End Sub
bleiben die Spalten der ausgefüllten Zellen (D4:AC4) sichtbar, aber die ausgeblendeten Spalten werden bei Deaktivierung der Checkbox nicht wieder eingeblendet.
Sind die beiden Codes kombinierbar oder gibt es einen einfachere Lösung?
Gruß Marko