ich schustere mir seit einigen Wochen mehr schlecht als recht ein großes Makro-Formular zusammen, in dem verschiedenen Projektschritte bearbeitet werden in Sheet1 ("Vorschau"). Jetzt möchte ich dort eine Checkbox setzen die bei aktivierung / deaktivierung folgendes macht:
im Blatt3 ("OP-Liste") alle Zeilen ausblenden (bei nicht-aktivierung der Checkbox) oder einblenden (bei aktivierung der Checkbox), die in Spalte "AA" den Wert "SAV" stehen haben.
Das habe ich alles hin bekommen, wenn die Checkbox im gleichen Blatt ist wie die auszublendenden Zellen. Wenn ich jeder aber die Checkbox in einem anderen Blatt habe, wie gewünscht - keine Chance... habe irgendwie schon alle Fehler mitgenommen. Außerdem habe ich die vorstellung, dass das ganze "im Hintergrund" läuft - also nicht:
Sheets("OP-Liste").Select
dann hier arbeiten
dann wieder
Sheets("Vorschau").select
also quasi, dass der User davon nichts mitbekommt und es im HIntergrund läuft.
Hier mal mein kläglicher Versuch...
____________________________________________
Private Sub CheckBox1_Click() 'Checkbox befindet sich in Sheet("Vorschau")
If CheckBox1.Value = False Then
Sheets("OP-Liste").Select 'Das hier ist das was eigentlich im Hintergrund gewünscht ist...
Dim Zelle As Range
For Each Zelle In ActiveSheet.UsedRange
If Zelle.Value = "SAV" And Rows(Zelle.Row).Hidden = False _
Then Rows(Zelle.Row).Hidden = True
Next Zelle
Sheets("Vorschau").Select
End If
If CheckBox1.Value = True Then
Sheets("OP-Liste").Select
Sheets("OP-Liste").Select
For Each Zelle In ActiveSheet.UsedRange
If Zelle.Value = "SAV" And Rows(Zelle.Row).Hidden = True _
Then Rows(Zelle.Row).Hidden = False
Next Zelle
Sheets("Vorschau").Select
End If
End Sub
________________________________________
Vielen Dank euch schonmal! BIn für jede Anmerkung / Hilfe offen.
VG Felix