Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1360to1364
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Textfarbe bei farbig hinterlegten Zellen ändern

Textfarbe bei farbig hinterlegten Zellen ändern
28.05.2014 09:44:13
Mike
Hallo liebe EXCEL-Spezialisten
Bin beim Googeln auf dieses Forum gestossen und habe den Eindruck, dass sich hier hilfsbereite Leute mit einem grossen Fachwissen treffen und mir allenfalls helfen können.
Folgende Ausgangslage: EXCEL 2010-Datei mit rund 35 Tabellenblättern; jeweils diverse farbig hinterlegte Zellen (immer dieselbe Farbe) zur optischen Gliederung. Textfarbe durchgehend schwarz resp. automatisch.
Wunsch: Alle Texte in den farbig hinterlegten Zellen sollen für den Ausdruck auf weiss geändert werden (Optik / Ästhetik), für das nachträgliche Bearbeiten aber wieder auf schwarz zurück (bessere Lesbarkeit). Umschalten per Mausklick auf Schaltfläche oder Dropdown.
Bisheriger Ansatz: Habe eine einfache bedingte Formatierung erstellt:
=UND($A$1="weiss")
wobei sich $A$1 auf eine kleine Dropdownliste mit den zwei Werten "weiss" und "schwarz" bezieht und die Formatierung einfach die Textfarbe auf weiss ändert.
Das funktioniert bei einer einzelnen Zelle problemlos, und wenn ich beim Dropdown wieder auf "schwarz" wechsle ändert der Text auch wieder brav zurück zu schwarz. Nun habe ich aber geschätzte 300 Zellen mit unterschiedlichen Inhalten und Formatierungen, welche betroffen sind. Wenn ich mit dem "Pinsel" das Format übertrage, geht das relativ zackig und ich kann zwar wunderbar die Textfarbe hin- und herschalten, aber die ursprüngliche Formatierung der Zellen wird überschrieben. Jede Zelle einzeln bedingt formatieren ist ein Riesenaufwand.
Hat jemand eine elegantere sprich zeitsparendere Lösung? Ich bedanke mich im Voraus für "sachdienliche Hinweise" wie Ede Zimmermann gesagt hätte...

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Gültigkeitsbereich der BedingtFormatierung ...
28.05.2014 13:56:22
Luc:-?
…einfach auf alle betroffenen Zellen erweitern, Mike,
nicht Format übertragen! Dazu erste betroffene Zelle auswählen und Eintrag im Gültigkeitsbereich entsprd ändern (immer AbsolutAdressen!), zB $A$1:$A$300;$C$1:$C$300;… (usf).
Gruß Luc :-?

AW: Gültigkeitsbereich der BedingtFormatierung ...
28.05.2014 15:00:28
Mike
Danke für die rasche Antwort, Luc! Ich vermute jedoch, dass dein Vorschlag meine Problemstellung nicht löst, denn: Die geschätzten 300 betroffenen Zellen sind weder zusammenhängend noch befinden sie sich auf demselben Tabellenblatt. Die absolute Adresse $A$1 (fiktiv) bezieht sich auf das Dropdown, wo ich mit einem Klick bei sämtlichen betroffenen Zellen auf allen Tabellenblättern die Textfarbe ändern will.
Im Prinzip müsste ich wahrscheinlich die erwiesenermassen funktionierende bedingte Formatierung bei sämtlichen betroffenen Zellen hineinkopieren; die absolute Adresse sorgt dafür, dass ich nur auf einem Tabellenblatt mein Dropdown einrichten muss und, eben, mit einem Klick alles ändern kann.
Siehe dazu einen Ausschnitt aus einem Tabellenblatt; rechts ist das noch provisorische Dropdown schwarz/weiss:
Userbild

Anzeige
AW: Textfarbe bei farbig hinterlegten Zellen ändern
28.05.2014 15:16:10
EtoPHG
Hallo Mike,
Für eine Formularschaltfläche z.B. dieser Code (funktioniert als Flip-Flop):
Sub SchwarzWeiss()
Static bFlip As Boolean
Dim rc As Range
For Each rc In ActiveSheet.UsedRange
If rc.Interior.ColorIndex  xlColorIndexNone Then rc.Font.Color = vbWhite * -bFlip
Next rc
bFlip = Not bFlip
End Sub
Gruess Hansueli

AW: Textfarbe bei farbig hinterlegten...
30.05.2014 11:45:46
Mike
Danke Hansueli! Für das jeweils aktive Tabellenblatt funktioniert das perfekt, leider nicht für alle Tabellenblätter zusammen auf einen Klick. Ich bin ein blutiger VBA-Anfänger und habe probehalber "ActiveSheet" durch "Workbook" ersetzt, was jedoch prompt durch eine Fehlermeldung quittiert wird.
Wie wende ich den Befehl auf alle Tabellenblätter in der geöffneten Datei an?

Anzeige
AW: Textfarbe bei farbig hinterlegten...
30.05.2014 14:22:50
Mike
Das sieht dann so aus:
Userbild
Wenn ich auf "debuggen" klicke wird ".Interior" blau hinterlegt. Bin ratlos...

AW: Textfarbe bei farbig hinterlegten...
30.05.2014 17:22:02
EtoPHG
Hallo Mike,
So:
Sub Text_Weiss()
Static bFlip As Boolean
Dim ws As Worksheet, rc As Range
For Each ws In ThisWorkbook.Worksheets
For Each rc In ws.UsedRange
If rc.Interior.ColorIndex  xlColorIndexNone Then rc.Font.Color = vbWhite * -bFlip
Next rc
Next ws
bFlip = Not bFlip
End Sub
Gruess Hansueli

AW: Textfarbe bei farbig hinterlegten...
02.06.2014 08:23:29
Mike
Vielen Dank, Hansueli! Das Excel ist zwar bei jedem "Flip" rund 90 Sekunden beschäftigt (und somit blockiert = "keine Rückmeldung"), aber das ist allemal schneller als die Zellen manuell zu formatieren.
Wünsche dir einen guten Wochenstart!
Anzeige

378 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige