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

Bedingte Formatierung auf Datenabfrage

Forumthread: Bedingte Formatierung auf Datenabfrage

Bedingte Formatierung auf Datenabfrage
22.03.2025 12:54:39
Gerhard K.
Hallo zusammen,

vorab, vielen Dank für dieses tolle Forum, ich habe hier schon soo viele tolle Tips und Lösungen gefunden, für mein aktuelles Problem leider nicht, deshalb hier meine (erste) Anfrage:

ich habe eine Datei mit den Namen der Mitarbeitenden ab Zeile 8 in Spalte A, die Bezeichnung des Teams in Spalte B, in der Zeile 7 die Datumsangaben für z.B. das aktuelle Kalenderjahr. Darin werden für jeden Mitarbeitenden z. B. Urlaube und andere Abwesenheiten eingetragen. Auf einem 2.ten Tabellenblatt "Parameter" gibt es einen Bereich mit den Feiertagen.

Wochenenden, den aktuellen Tag und auch Feiertage markiere ich mittels bedingter Formatierung per VBA, und zwar so:

Sub BedFormat_Kalender()
If WsK Is Nothing Then Call ReHAb_initialisieren
WsK.Activate
Cells(7, 1).Activate
iRow = Selection.End(xlDown).Row
Application.CutCopyMode = False
Cells.FormatConditions.Delete
sAlles = "$G$7:$MM$" & iRow
sBody = "$G$8:$MM$" & iRow

'Wochenende Alles
Range(sAlles).FormatConditions.Add Type:=xlExpression, Formula1:= _
"=WOCHENTAG(G$7;2)>5"
Range(sAlles).FormatConditions(Range(sAlles).FormatConditions.Count).SetFirstPriority
With Range(sAlles).FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 5296274
.TintAndShade = 0
End With
With Range(sAlles).FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 5296274
.TintAndShade = 0
End With
Range(sAlles).FormatConditions(1).StopIfTrue = False

'Feiertage ausfüllen alles
Range(sAlles).FormatConditions.Add Type:=xlExpression, Formula1:= _
"=SVERWEIS(G$7;Parameter!$F$2:$F$29;1;0)"
Range(sAlles).FormatConditions(Range(sAlles).FormatConditions.Count).SetFirstPriority
With Range(sAlles).FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 49407
.TintAndShade = 0
End With
With Range(sAlles).FormatConditions(1).Font
.ColorIndex = xlAutomatic
.TintAndShade = 0
End With
Range(sAlles).FormatConditions(1).StopIfTrue = False

'Feiertage Schrift ausblenden
Range(sBody).FormatConditions.Add Type:=xlExpression, Formula1:= _
"=SVERWEIS(G$7;Parameter!$F$2:$F$29;1;0)"
Range(sBody).FormatConditions(Range(sBody).FormatConditions.Count).SetFirstPriority
With Range(sBody).FormatConditions(1).Font
.Color = -16727809
.TintAndShade = 0
End With
Range(sBody).FormatConditions(1).StopIfTrue = False

'Heute markieren
Range("$AA$7:$AZ$7").FormatConditions.Add Type:=xlTimePeriod, DateOperator:=xlToday
Range("$AA$7:$AZ$7").FormatConditions(Range("$AA$7:$AZ$7").FormatConditions.Count).SetFirstPriority
With Range("$AA$7:$AZ$7").FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 49407
.TintAndShade = 0
End With
Range("$AA$7:$AZ$7").FormatConditions(1).StopIfTrue = False
End Sub

Das funktioniert soweit ganz prima, das heutige Datum funktioniert nur für die Datumszeile, aber das ist auch soweit in Ordnung.

Jetzt zu meinem Problem:

für die Teamleitenden habe ich eine Datei, in der per Datenabfrage nur die Teammitglieder und deren Kalendereintragungen abgefragt werden, auch hier gibt es eine Tabelle "Parameter" in der ebenfalls die Feiertage vorhanden sind.

Nun möchte ich per Bedingter Formatierung hier ebenfalls die Feiertage einfärben, im Grunde genau wie oben, die Zellbereiche sind natürlich angepasst, das funktioniert auch ganz wunderbar für den heutigen Tag und die Wochenenden, nicht aber für die Feiertage und ich verstehe leider nicht, warum?

Hat jemand eine Idee, liegt es an der Datenabfrage? Aber warum funktionieren dann die Wochenenden? Ich weiß leider nicht mehr weiter und habe zu dem Thema leider intensiv recherchiert, aber nichts gefunden. Hier ist meine letzte Hoffnung auf Hilfe.

Gruß Gerhard
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bedingte Formatierung auf Datenabfrage
22.03.2025 13:28:13
SF
Hola,
du hast also Problem ein Problem in einer Datei die nur du kennst und die anders aufgebaut ist wie die beschriebene Datei, die wir auch nicht sehen? Und jetzt sollen wir sagen warum es nicht klappt?
Gruß,
steve1da
AW: Bedingte Formatierung auf Datenabfrage
22.03.2025 16:37:27
Gerhard K.
Es handelt sich um eine relativ simple Kalenderdatei und daraus wird per Datenabfrage ein Teil extrahiert, ich dachte, diese Beschreibung würde genügen, denn ich kann aus dem Netzwerk, in dem sich die Dateien befinden, weder andere Dateien downloaden, noch irgendetwas uploaden oder als Mailanhang versenden, das ist nicht erlaubt, bzw. funktioniert auch nicht.
Und ich werde, kann und will mir nichts überlegen, um diese Restriktionen zu umgehen.

Also vielen Dank für die versuchte Hilfe, dann muss ich mir wohl etwas anderes überlegen.


Gruß Gerhard
Anzeige
AW: Bedingte Formatierung auf Datenabfrage
22.03.2025 17:49:30
cysu11
Hallo Gerhard,

da muss ich Steve Recht geben, das ist immer sehr schwer für die Helfer nachzuvollziehen, was das Problem ist, du in deinen Kopf weißt genau was du meinst und willst, aber die Helfer tun sich da schwer ohne Beispieldateien. Du kannst ja die betroffenen Datei/en abspeichern und die daten kürzen und anonymisieren. Machen alle hier im Forum so. :)

LG, Alexandra
Anzeige
AW: Bedingte Formatierung auf Datenabfrage
23.03.2025 10:40:26
Gerhard K.
Guten Morgen und nochmals Dank für Eure Mühe und Hilfe.

ich habe jetzt von meinem Privatrechner zwei Dateien erstellt, die in etwa das Problem wiedergeben. Diese stehen bei mir in einem Verzeichnis C:\temp damit die Datenabfrage funktioniert.

https://www.herber.de/bbs/user/176374.xlsm
https://www.herber.de/bbs/user/176375.xlsm

Die erste Datei ist der Gesamtkalender, die 2.te ist für den Teamleiter.

In der ersten funktioniert die Bedingte Formatierung für den heutigen Tag, die Wochenenden und die Feiertage.
In der zweiten funktioniert es nur für den heutigen Tag und die Wochenenden, nicht aber für die Feiertage.

Die Formatierungen setze ich per VBA.
Was mache ich da falsch?
Vielen Dank im Voraus.

Gerhard
Anzeige
AW: Bedingte Formatierung auf Datenabfrage
23.03.2025 10:51:59
Eifeljoi 5
Hallo

Warum nutzt du noch VBA??
Nutze doch alles wie du schon angefangen hast dein PQ.
AW: Bedingte Formatierung auf Datenabfrage
23.03.2025 19:32:57
cysu11
Hallo Gerhard,

das liegt daran, dass in der zweiten Datei du die Übersicht als "intelligente Tabelle" Formatiert hast, und da hat sverweis anscheinend ein Problem damit.
Gehe in die Tabelle, rechte Maustaste, in Bereich konvertieren, dann ist die intelligente Tabelle aus und nun trage das Datum z.b. 14.03.2025 manuell nochmals in P1 ein, dann funktioniert es. Warum das so ist, können vielleicht die Experten hier sagen, den selbst wenn ich die Formel mit dem Sverweis in eine Zelle reinschreibe, geht es mit der intelligenten Tabelle trotzdem nicht. ;)
Hoffe das hilft Dir schon mal weiter...

LG, Alexandra
Anzeige
AW: Bedingte Formatierung auf Datenabfrage
24.03.2025 09:09:22
Gerhard K.
Danke für die Hilfe. Wieder was gelernt.

Gruß Gerhard
AW: Bedingte Formatierung auf Datenabfrage
24.03.2025 12:08:02
SF
Das Problem ist nicht die intelligente Tabelle im Blatt Parameter.
Das Problem ist die intelligente Tabelle im Blatt Übersicht. Hier ist die erste Zeile die Überschriftenzeile und die ist IMMER Text, völlig etwas was du da reinschreibst und welches Format du einstellst.
Und TEXT mit ZAHL vergleichen kann der Sverweis nicht, wie übrigens auch viele anderen Funktionen.
Der Sverweis macht hier alles richtig.
Anzeige
AW: Bedingte Formatierung auf Datenabfrage
24.03.2025 12:51:56
Gerhard K.
Das wusste ich auch noch nicht, damit ist alles klar und ich werde mir entsprechend was anderes ausdenken. vielen Dank, Frage beantwortet !!

Gruß Gerhard

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige