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

Forumthread: Bestehnde bedingte Formatierung anpassen mit VBA

Bestehnde bedingte Formatierung anpassen mit VBA
09.12.2013 15:45:03
Martin
Hallo Zusammen
Die Suche im Forum bringt nicht die Lösung.
Wir haben einige Dokumente mit sehr vielen Tabellenblätter welche eine bedingte Formatierung von sehr vielen Einzelzellen haben.
Das sind ca. 1000 Bedingungen pro Blatt und der Zeitaufwand diese zu verändern ist sehr gross.
Die Logik ist jedoch simpel: Jeder Bedingte Formatierung mit roter Füllung
muss die Textfarbe weiss haben. Jetzt würde ich gerne bei allen bedingten Formatierungen welche rote Füllung haben, die Textfarbe mit VBA auf weiss umstellen.
Die Formeln der bedingten Formatierungen sind unterschiedlich und müssen unverändert bleiben.
Hat jemand eine Lösung wie das mit VBA möglich ist?
Danke und freundliche Grüsse
Martin

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bestehnde bedingte Formatierung anpassen mit VBA
09.12.2013 23:29:43
Mustafa
Hallo Martin,
Versuch es mal so :
Sub bedFormat()
Dim Zelle As Range
For Each Zelle In Worksheets("Tabelle1").UsedRange.SpecialCells(xlCellTypeAllFormatConditions)
Zelle.FormatConditions(1).Font.ColorIndex = 2
Next
End Sub
Dabei wird aber immer nur die Erste bedingte Formatierung auf die Schriftfarbe Weiss gesetzt.
Sollten mehrere bedingte Formatierungen aktiv sein in einer Zelle dann muss eventuell geprüft werden wieviele Bedingungen es gibt und jede geänder bzw geprüft und geändert werden.
Rückmeldung obs Hilft wäre nett.
Gruß aus der Domstadt Köln.

Anzeige
AW: Bestehnde bedingte Formatierung anpassen mit VBA
10.12.2013 04:39:28
Mustafa
Hallo Martin,
hier mal eine überarbeitete Version, die Prüft wieviele bedingten Formatierungen die Zelle hat, Prüft ob die Füllfarbe den ColorIndex 3 = Rot hat, und daraufhin die Schriftfarbe auf den ColorIndex 2 = weiss setzt.
Sub bedFormat()
Dim Zelle As Range
Dim Füllfarbe As Integer
Dim AnzahlFormate As Integer, Zähler As Integer
For Each Zelle In Worksheets("Tabelle1").UsedRange.SpecialCells(xlCellTypeAllFormatConditions)
AnzahlFormate = Zelle.FormatConditions.Count
For Zähler = 1 To AnzahlFormate
Füllfarbe = Zelle.FormatConditions(Zähler).Interior.ColorIndex
If Füllfarbe = 3 Then
Zelle.FormatConditions(Zähler).Font.ColorIndex = 2
End If
Next
Next
End Sub
Rückmeldung obs Hilft wäre nett.
Gruß aus der Domstadt Köln.

Anzeige
AW: Bestehnde bedingte Formatierung anpassen mit VBA
11.12.2013 11:12:30
Martin
Hallo Mustafa
Besten Dank für deine Mithilfe.
War bis heute Mittag extern.
Prüfe umgehend deine Lösungsvariante.
Feedback folgt.
Aber vielen Dank im Voraus.
Gruss
Martin

AW: Bestehnde bedingte Formatierung anpassen mit VBA
11.12.2013 11:17:26
Martin
YEAH..... Danke das funktioniert.
Mann das war ja eigentlich gar nicht so kompliziert wie ich mir das vorgestellt hatte.
Werde mir jetzt den automatischen Tabellenblatt wechsel hinzufügen danach rennt das Makro perfekt über alle Tabellenblätter.
Danke vielmal, hoffe das hilft auch anderen.
Gruss
Martin

Anzeige
Danke für die Rückmeldung owT
11.12.2013 23:06:13
Mustafa
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige