Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Bestimmte Zellen farbig geht nur teilweise

Bestimmte Zellen farbig geht nur teilweise
21.10.2024 15:33:52
Dieter
Hey all,
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

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bestimmte Zellen farbig geht nur teilweise
21.10.2024 15:38:10
Onur
Der Code ohne die dazugehörige Datei bringt nicht viel....
AW: Bestimmte Zellen farbig geht nur teilweise
22.10.2024 12:08:48
Dieter
Hey Onur,
Es ist schwierig die Datei oder einen Auszug hoch zu laden,
da sehr viele Tabellen daran hängen. ist sehr komplex.
Wie gesagt, alle Zellen farbig machen geht bis auf dem letzten Teil.
Es werden die Zellen richtig beschrieben mit Feiertag, Geburtstag und Alter
nur die Spalten werden komplett farbig erstellt und nicht nur die Zellen jeweils.
Vielleicht noch erwähnt, das Feiertag, Geburtstag, Alter jeweils in einer Zelle stehen.
Hier ist mal der Code wo aus der UF die Ceckboxen ausgelöst werden.
Vielleicht reicht das jetzt ?
Private Sub CommandButton7_Click()      ' Sverweis für Feiertag - Geburtstag Alter setzen

Userform2.Show
Exit Sub

Private Sub CommandButton3_Click()

Dim sp
Dim rng1 As Range, rng2 As Range
Dim ws As Worksheet
Application.ScreenUpdating = False
Application.EnableEvents = False
If CheckBox1 = True Then ' nur Feiertag anzeigen
For Each ws In ActiveWorkbook.Worksheets ' Autofilter in allen Mappen False = löschen
If ws.AutoFilterMode = True Then
ws.AutoFilterMode = False
End If
Next ws
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);"""")" ' nur Feiertag anzeigen
.Formula = .Value
.Replace " ", "", xlWhole
If WorksheetFunction.CountA(.Cells) > 0 Then .SpecialCells(xlCellTypeConstants, 2).Interior.ColorIndex = 34
End With
Next
End If
Sheets("Kalender").Range("L1, L35").Value = "Feiertstags Kalender" & " " & Range("W1") 'datum
Application.ScreenUpdating = True
Application.EnableEvents = True
Range("C1").Select
CheckBox1 = False
CheckBox2.Visible = True 'True einblenden False ausblenden
CheckBox3.Visible = True
CheckBox4.Visible = True
CheckBox5.Visible = True
userform2.Hide

'---------------------------------------------------------------------

If CheckBox2 = True Then ' nur Geburtstag aneigen
Application.ScreenUpdating = False
Application.EnableEvents = False
CheckBox1 = False
CheckBox3 = False
CheckBox4 = 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);"""")"
.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 Kalender" & " " & Range("W1") 'datum
Application.ScreenUpdating = True
Application.EnableEvents = True
Range("C1").Select
CheckBox2 = False
CheckBox1.Visible = True 'True einblenden False ausblenden
CheckBox3.Visible = True
CheckBox4.Visible = True
CheckBox5.Visible = True
userform2.Hide

End If
'---------------------------------------------------------------------

If CheckBox3 = True Then ' Feiert. u. Geburt anzeigen
Application.ScreenUpdating = False
Application.EnableEvents = False
CheckBox1 = False
CheckBox2 = False
CheckBox4 = 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);Feiertag;2;FALSCH);"""")&"" ""&WENNFEHLER(SVERWEIS(ZS(-2);Geburtstag;2;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 Kalender" & " " & Range("W1") 'datum
Application.ScreenUpdating = True
Application.EnableEvents = True
Range("C1").Select
CheckBox3 = False
CheckBox1.Visible = True 'True einblenden False ausblenden
CheckBox2.Visible = True
CheckBox4.Visible = True
CheckBox5.Visible = True
userform2.Hide

End If
'---------------------------------------------------------------------

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
'---------------------------------------------------------------------

If CheckBox5 = True Then ' Feiert. u. Geburtstag mit 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

Private Sub CommandButton4_Click() 'abbrechen der UF
CheckBox1 = False 'False Haken entfernen True gesetzt lassen
CheckBox2 = False
CheckBox3 = False
CheckBox4 = False
CheckBox5 = False
CheckBox1.Visible = True 'True einblenden False ausblenden
CheckBox2.Visible = True
CheckBox3.Visible = True
CheckBox4.Visible = True
CheckBox5.Visible = True
userform2.Hide
Sheets("Kalender").Range("C1").Select
End Sub

Lg
Dieter
Anzeige
AW: Bestimmte Zellen farbig geht nur teilweise
22.10.2024 12:18:32
Onur
Du kapierst es nicht: Ich werde bestimmt nicht einen auf eine Datei massgeschneiderten Code anfangen zu analysieren, wenn ich die Datei dazu (z.B. zum Testen) nicht habe.,
Ausserdem kann man ohne die Datei höchstens auf Symtaxfehler usw untersuchen, aber nicht wo der Code warum falsch läuft.
All die Blätter, die nicht den Code betreffen kannst du doch zum Hochladen löschen - Hauptsache die Datei funktioniert noch.
Anzeige
AW: Bestimmte Zellen farbig geht nur teilweise
22.10.2024 17:12:01
Dieter
Hey Onur,
Das hat mit kapieren nix zu tun, ich weiß selber das es mit der ganzen
Datei besser ginge zum nachforschen. Ich sagte aber auch das die Datei sehr komplex ist
und ich sie deswegen extra auseinander reißen müsste was nicht mal eben geht
bis Sie wieder oder so läuft zum kontrollieren für Dich. Ich verstehe Dich schon.
Aber Du verstehe mich auch bitte.
Vielleicht hat ja noch jemand eine Idee ohne Dir was zu wollen.
Du hast mir schon mehr wie einmal geholfen bei Problemen
wo ich Dir auch immer wieder dankbar für bin.
Lg
Dieter
Anzeige
AW: Bestimmte Zellen farbig geht nur teilweise
22.10.2024 17:19:04
onur
Kannst du sie mir denn wenigstens als Mail schicken, wenn ich dir eine Mailadresse poste ?
AW: Bestimmte Zellen farbig geht nur teilweise
24.10.2024 12:37:51
Dieter
Hey Onur,
Danke für Dein Angebot, wir versuchen es das letzte mal so.
Ich habe mir mal die Arbeit gemacht alles rauszunehmen
was nicht dazu gehört und denke jetzt kannst Du damit was anfangen.
https://www.herber.de/bbs/user/173133.xlsm
In der UF die untere Combobox da siehst Du den unterschied zu den anderen,
und da ist irgendwo der Fehler.
Lg
Dieter

Anzeige
AW: Bestimmte Zellen farbig geht nur teilweise
24.10.2024 12:50:57
Eifeljoi 5
Hallo

Solchen Kalender könnte man auch ganz ohne VBA machen mit PQ.
Warum VBA?
AW: Bestimmte Zellen farbig geht nur teilweise
26.10.2024 12:13:09
Dieter
Hallo Onur,
Danke für die Überarbeitung des Codes.
So wie er ist läuft er, aber es sind keine Leerzeichen zwischen den Namen.
Über den Formeln habe ich Leerzeichen drin, aber wenn ich das zwischen der letzten Formel
mache ist das selbe wie vorher. Die gesamten Spalten werden farbig.
Alt
          .FormulaR1C1Local = "=WENNFEHLER(SVERWEIS(ZS(-2);Feiertag;2;FALSCH);"""")&""""&WENNFEHLER(SVERWEIS(ZS(-2);Geburtstag;2;FALSCH);"""")&""""&WENNFEHLER(SVERWEIS(ZS(-2);Alter;4;FALSCH);"""")"


Neu
          .FormulaR1C1Local = "=WENNFEHLER(SVERWEIS(ZS(-2);Feiertag;2;FALSCH);"""")&"" ""&WENNFEHLER(SVERWEIS(ZS(-2);Geburtstag;2;FALSCH);"""")&"" ""&WENNFEHLER(SVERWEIS(ZS(-2);Alter;4;FALSCH);"""")"


Könntest Du da noch mal drüber schauen bitte.
Hier ist Deine geänderte Datei, mit meiner geänderter Formel für Leerzeichen zwischen den Namen.
https://www.herber.de/bbs/user/173168.xlsm
Lg
Dieter
Anzeige
AW: Bestimmte Zellen farbig geht nur teilweise
26.10.2024 12:22:48
Onur
Ich habe die Leerzeichen weggemacht, damit es endlich funktioniert.
"keine Leerzeichen zwischen den Namen" ? Zwischen welchen Namen denn? Wozu Leerzeichen statt ""?
AW: Bestimmte Zellen farbig geht nur teilweise
29.10.2024 12:14:16
Dieter
Hey Onur,
Ich weiß nicht genau was Du meinst,
Mit den Leerzeilen wollte ich es schöner machen.
Es sieht ja jetzt so aus, Neujahrheidy70J bei Deinem Code und meiner Formel.
Wenn jetzt über die Formel statt &"" ""& bei Alter so &""""& schreibe
Kommt im Kalender Neujahr Heidy70J raus bei Deinem Code.
Gerne würde ich aber das es so Neujahr Heidy 70J aussieht.
Außerdem ist mir aufgefallen, in meiner Organalen Tabelle,
würde der alte Code auch laufen wenn ich das &"" ""& in &""""& ändere in meiner Formel.
Aber dabei käme das selbe raus wie oben
und nicht wie ich es gerne hätte.
Wenn das alles zu kompliziert ist, dann lassen wir es dabei wie es ist
und ich würde mir dann vielleicht was anderes dazu einfallen lassen bis es mir gefällt.
Du hast ja auch noch andere Dinge zu erledigen wie sich nur mit meinem Fall zu beschäftigen.
Aber wie immer bin ich Dir dankbar der Hilfe.
Lg aus dem Ruhrpott
Dieter
Anzeige
AW: Bestimmte Zellen farbig geht nur teilweise
29.10.2024 16:32:02
Onur
Ich habe mal deinen Codeversuch neu geschrieben. Analysiere ihn und lerne mal etwas daraus (z.B. was "Excel gut, VBA gut" wirklich bedeutet :)

https://www.herber.de/bbs/user/173232.xlsm

AW: Bestimmte Zellen farbig geht nur teilweise
29.10.2024 16:36:36
Onur
Bitte letzte Zeile innerhalb der Sub auf
Application.ScreenUpdating = true
korrigieren.
Anzeige
AW: Bestimmte Zellen farbig geht nur teilweise
02.11.2024 14:03:19
Dieter
Hallo Onur,
Da hast Du dir doch die Arbeit und Mühe gemacht um mir zu helfen.
Was soll ich sagen, vielen vielen Dank Deiner Arbeit und Mühe.
ich muss mich erst einmal da durch fuchsen weil da ja überall Änderungen sind.
Vom Code, Bedingte Formatierung usw.
Ich verstehe nur nicht ganz Deine Aussage Zitat:
lerne mal etwas daraus (z.B. was "Excel gut, VBA gut" wirklich bedeutet :)
Ich habe gedacht, mit meinem Wissen, wäre die Aussage für das Forum gut.
Ich werde beim Nächsten mal herabstufen wenn ich einen neuen Beitrag eröffne.
Bis ich dahin komme wo Du stehst mit dem Wissen, vergehen noch paar Jahre,
und ich glaube von der Zeit her schaffe ich das sowieso nicht.
Aber gut jetzt,
Vielen vielen Dank nochmal Deiner Hilfe.
Ich baue jetzt erst mal die Tabelle wieder zusammen mit Deinen Änderungen.
Lg aus dem Pott
Dieter
Anzeige
AW: Bestimmte Zellen farbig geht nur teilweise
24.10.2024 16:43:24
Dieter
Hallo Eifeljoi 5,
Ja das könnte ich mir vorstellen, aber der Kalender ist nur sehr abgespeckt, wegen dem Fehler der farbigen Zellen.
In dem Kalender werden zb. auch Müll Abfuhr-Termine mit Pics der Tonnen eingesetzt, ein Putzplan, Doppelklick Optionen,
Zellen-Bearbeitung über Zelldropdown, ein Schichtplan wird intrigiert,
bestimmte Druckoptionen und noch einiges mehr gemacht,
deswegen habe ich am Anfang auch geschrieben das dieser Kalender Sehr komplex ist.
Ich habe aus vielen einzelnen Tabellen einen großen gemacht damit es für mich einfacher ist.
und es kann immer noch was dazu kommen.
Und zuletzt mit PQ kenne ich mich absolut überhaut nicht aus.
Aber trotzdem danke.
MfG.
Dieter
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige