Bestimmte Zellen farbig geht nur teilweise
21.10.2024 15:33:52
Dieter
Habe eine Userform mit mehreren Checkboxen.
Über den Checkboxen lasse ich mir mit Sverweis
verschiede Dinge in den Zellen meines Kalenders farbig anzeigen.
Es geht auch alles bei denen max. 2 Dinge angezeigt werden, nur
bei dem letzten Verweis wo Feier, Geburt, Alter angezeigt werden sollen,
wird mir jeweils die ganze Spalte farbig markiert bis Ende Tabelle
und nicht nur die jeweiligen Zellen.
Hier geht es zB.
If CheckBox4 = True Then ' Geburtstag und Alter anzeigen
Application.ScreenUpdating = False
Application.EnableEvents = False
CheckBox1 = False
CheckBox2 = False
CheckBox3 = False
CheckBox5 = False
Range("A3:X67").Interior.Color = -4142
Range("C3:C33,G3:G33,K3:K33,O3:O33," & _
"S3:S33,W3:W33,C37:C67,G37:G67,K37:K67,O37:O67,S37:S67,W37:W67").ClearContents
For Each sp In Array(3, 7, 11, 15, 19, 23)
With Sheets("Kalender").Cells(3, sp).Resize(67 - 3 + 1, 1)
.FormulaR1C1Local = "=WENNFEHLER(SVERWEIS(ZS(-2);Geburtstag;2;FALSCH);"""")&"" ""&WENNFEHLER(SVERWEIS(ZS(-2);Alter;4;FALSCH);"""")" ' Geburtstag und Alter anzeigen
.Formula = .Value
.Replace " ", "", xlWhole
If WorksheetFunction.CountA(.Cells) > 0 Then .SpecialCells(xlCellTypeConstants, 2).Interior.ColorIndex = 34
End With
Next
Sheets("Kalender").Range("L1, L35").Value = "Geburtstags Alters Kalender" & " " & Range("W1") 'datum
Application.ScreenUpdating = True
Application.EnableEvents = True
Range("C1").Select
CheckBox4 = False
CheckBox1.Visible = True 'True einblenden False ausblenden
CheckBox2.Visible = True
CheckBox3.Visible = True
CheckBox5.Visible = True
userform2.Hide
End If
Und hier nicht mehr:
If CheckBox5 = True Then ' Feiert. u.Geburtstag und Alter anzeigen
Application.ScreenUpdating = False
Application.EnableEvents = False
CheckBox1 = False
CheckBox2 = False
CheckBox3 = False
CheckBox4 = False
Range("A3:X67").Interior.Color = -4142
Range("C3:C33,G3:G33,K3:K33,O3:O33," & _
"S3:S33,W3:W33,C37:C67,G37:G67,K37:K67,O37:O67,S37:S67,W37:W67").ClearContents
For Each sp In Array(3, 7, 11, 15, 19, 23)
With Sheets("Kalender").Cells(3, sp).Resize(67 - 3 + 1, 1)
.FormulaR1C1Local = "=WENNFEHLER(SVERWEIS(ZS(-2);Feiertag;2;FALSCH);"""")&"" ""&WENNFEHLER(SVERWEIS(ZS(-2);Geburtstag;2;FALSCH);"""")&"" ""&WENNFEHLER(SVERWEIS(ZS(-2);Alter;4;FALSCH);"""")"
.Formula = .Value
.Replace " ", "", xlWhole
If WorksheetFunction.CountA(.Cells) > 0 Then .SpecialCells(xlCellTypeConstants, 2).Interior.ColorIndex = 34
End With
Next
Sheets("Kalender").Range("L1, L35").Value = "Feier u.Geburtstags Alters Kalender" & " " & Range("W1") 'datum
Application.ScreenUpdating = True
Application.EnableEvents = True
Range("C1").Select
CheckBox5 = False
CheckBox1.Visible = True 'True einblenden False ausblenden
CheckBox2.Visible = True
CheckBox3.Visible = True
CheckBox4.Visible = True
userform2.Hide
End If
End Sub
Ich vermute es liegt an dieser Zeile ?,
weil die immer gleich ist und da werden die Zellen farbig makiert.
If WorksheetFunction.CountA(.Cells) > 0 Then .SpecialCells(xlCellTypeConstants, 2).Interior.ColorIndex = 34
Wo liegt mein Fehler ?
Schon mal vielen Dank der Hilfe
Lg
Dieter
Anzeige