Hallo,
ich habe bereits mehrere Stunden an einem Problem gesessen und komme einfach nicht weiter. Deshalb hoffe ich, hier eine Anregung zu erhalten. Ich habe eine Tabelle im Tabellenblatt „Rohdaten“ mit verschiedenen Spalten, beispielsweise wie folgt (nur mit mehr Zeilen und anderen Überschriften):
Name
|
Stadt
|
Geschlecht
|
Kürzel
|
Vanessa
|
Hamburg
|
Frau
|
CF
|
Tom
|
Mainz
|
Mann
|
PR
|
Gleichzeitig habe ich mehrere Checkboxen, die ich mit den möglichen Auswahlmöglichkeiten in der oberen Tabelle benannt habe („Frau“, „Mann“, „Hamburg“, „Mainz“, „CF“ usw.). Die Auswahlmöglichkeiten in der Tabelle oben sind begrenzt, so dass ich es so machen konnte.
Man kann eine oder auch mehrere Checkboxen anklicken. Klickt man z. B. die Checkboxen „Mann“ und „Mainz“ an, sollen im Tabellenblatt „Rohdaten“ alle Zeilen ausgeblendet werden, die nicht beide Begriffe enthalten.
Ich habe mich an einem Code versucht (zunächst einmal für 3 Checkboxen):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | Public Sub Checkboxen()
Dim i as Integer
Dim ZeileMax as Integer
Dim Frau as String
Dim Mann as String
Dim Mainz String
ZeileMax = Rohdaten.Cells(Rows.Count,1). End (xlUp).Row
If Rohdaten.Frau.Value = True Then Frau = Rohdaten.Frau.Value
If Rohdaten.Mann.Value = True Then Mann = Rohdaten.Mann.Value
If Rohdaten.Mainz.Value = True Then Mainz = Rohdaten.Mainz.Value
For i = 2 to ZeileMax
If Rohdaten.Rows(i) = Frau And Mann And Mainz Then
Rohdaten.Rows(i).Hidden = False
Else
Rohdaten.Rows(i).Hidden = True
End If
Next
End Sub
|
Leider stimmt der Teil ab der „For … Next“-Schleife noch nicht und ich komme einfach nicht dahinter, wie ich es schreiben muss, damit es funktioniert bzw. damit geprüft wird, ob in der jeweiligen Zeile alle Namen der aktivierten Checkboxen vorkommen oder nicht.
Es würde mir enorm helfen, wenn mir hier jemand einen Tipp geben könnten!
Viele Grüße
Christine
|