Clever-Excel-Forum

Normale Version: Mehrere Zeilen mithilfe von Checkbox aufrufen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hi,

ich habe ein größere Tabelle und möchte mit Hilfe einer Checkbox nur bestimmte Spalten angezeigt bekommen. (Z.B. nur die Spalten A:A, C:C, E:E usw.)

Mommentan bin nich nur so weit gekommen mehrere Spalten in einer Checkbox "zu vereinen" aber diese nur in der gesamten Tabelle ein- oder auszublenden (s. Beispiel unten)

Da ich leider noch nicht so viel Erfahrung mit Macros habe, komme ich hier einfach nicht weiter.

Danke schon Mal im Vorraus



Code:
Private Sub CheckBox1_Click()
If CheckBox1.Value = True Then
Columns("C:C").Select
    Selection.EntireColumn.Hidden = True
End If
If CheckBox1.Value = False Then
Columns("C:C").Select
    Selection.EntireColumn.Hidden = False
End If
If CheckBox1.Value = True Then
Columns("D:D").Select
    Selection.EntireColumn.Hidden = True
End If
If CheckBox1.Value = False Then
Columns("D:D").Select
    Selection.EntireColumn.Hidden = False
End If
End Sub
Hallo,
Private Sub CheckBox1_Click()
 Columns.Hidden = True
 Range("C1,D1").EntireColumn.Hidden = CheckBox1.Value
End Sub
Gruß Uwe
Hi,

so vielleicht?
Checkbox1 in Spalte A und dann:
Private Sub CheckBox1_Click()
      Columns("B:Z").EntireColumn.Hidden = CheckBox1.Value
      Columns("C:C").EntireColumn.Hidden = Not CheckBox1.Value
      Columns("D:D").EntireColumn.Hidden = Not CheckBox1.Value
End Sub
Hi,

mit Ralfs Ansatz funktuniert es, allerdings sind die Zeilen C+D nur sichtbar wenn der Haken gesetzt wird. Gibts da noch eine Möglichkeit dass die beiden Zeilen trotzdem in der Gesamttabelle angezeigt werden?
Hi,

vielleicht so:
Private Sub CheckBox1_Click()
If CheckBox1 = True Then
   Columns("B:Z").EntireColumn.Hidden = CheckBox1.Value
   Columns("C:C").EntireColumn.Hidden = Not CheckBox1.Value
   Columns("D:D").EntireColumn.Hidden = Not CheckBox1.Value
Else
   Columns("B:Z").EntireColumn.Hidden = CheckBox1.Value
   Columns("C:C").EntireColumn.Hidden = CheckBox1.Value
   Columns("D:D").EntireColumn.Hidden = CheckBox1.Value
   End If
End Sub

oder kürzer:
Private Sub CheckBox1_Click()
   Columns("B:Z").EntireColumn.Hidden = CheckBox1.Value
   If CheckBox1 = True Then
      Range("C1,D1").EntireColumn.Hidden = Not CheckBox1.Value
   Else
      Range("C1,D1").EntireColumn.Hidden = CheckBox1.Value
   End If
End Sub

noch kürzer:
Private Sub CheckBox1_Click()
   Columns("B:Z").EntireColumn.Hidden = CheckBox1.Value
   Range("C1,D1").EntireColumn.Hidden = False
End Sub
Hi Ralf,

1000 Dank. So funktioniert es!
Hallo,

könnte mir einer verraten, was an meinem Code hier nicht funktioniert? Zumal bei Ralf´s Code nicht alle restlichen Spalten ausgeblendet werden.

Gruß Uwe
Hi Uwe,

bei mir kommt dieses:
[attachment=12251]

bei Colums.Hidden

Checkbox ist in Spalte C
sonst komplettes Sheet leer
Hi Ralf,

(13.07.2017, 15:36)Rabe schrieb: [ -> ]Checkbox ist in Spalte C

dann ist es klar, dass sich nicht alle Spalten ausblenden lassen. Nun ja ...  Dodgy

Gruß Uwe
Wenn Du alle Spalten ausblendest, dann ist die Checkbox doch sowieso in einer Spalte, die ausgeblendet wird, egal, in welche Du sie reinsetzt.
Seiten: 1 2