Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Bedingte Formatierung im Textfeld beibehalten
#1
Guten Tag,

mein Name ist Harald und ich bin neu in diesem Forum. Ich nutze Excel 2016 unter Windows 10 pro.

Zur Selbsteinschätzung.
Excel nutze ich seit der Version Excel 95 für diverse Projekte. Dabei handelt es sich meistens um Aufbereitung und Verwaltung von Benotungen sowie Erstellung von Übersichten.
Also fortgeschrittener Anfänger.

Bei meinem aktuellen Projekt finde ich allerding für mein Vorhaben keine Lösung.

In einer Tabelle mit ca. 1000 Zeilen und 50 Spalten nutze ich, aus Gründen der besseren Übersichtlichkeit, Textfelder. Die Textfelder werden aus unterschiedlichen "QuellZellen" gespeist (=AB1) z.B. .
In den Quellzellen ist per bedingter Formatierung die Schriftfarbe definiert (= "ON" ; dann Schriftfarbe Farbe Grün) Die Grundformatierung ist Schriftfarbe Weiss. Das klappt auch super.
Die Grundfarbe (weiss)  wird im Textfeld dargestellt. Die bedingte Farbe (grün), wenn die Bedingung hierfür erfüllt ist, nicht. Ändere ich in den QuellZellen per Formatänderung die Farbe wird sie anstandslos vom Textfeld übernommen. Nur eben nicht die Farbänderung per bedingter Formatierung.

Kann mir jemand erklären wo der Fehler liegt? Oder kann Excel das einfach nicht? Wenn Excel hier überfordert ist, gibt es einen anderen Weg zum Ziel (VBA)?

Gruß
Harald
Antworten Top
#2
Hi,

Beispieldatei?

(06.12.2023, 13:04)HyFly schrieb: Ändere ich in den QuellZellen per Formatänderung die Farbe wird sie anstandslos vom Textfeld übernommen. Nur eben nicht die Farbänderung per bedingter Formatierung.
Auch das funktioniert bei mir nicht. Die TExtfarbe im Textfeld bleibt wie sie ist. Daher frage ich nach einer Beispieldatei.
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
Antworten Top
#3
Hallo Harald,

per VBA geht es mit DisplayFormat:

Code:
ActiveSheet.TextBoxes("Textfeld 1").Characters.Font.Color = Range("B2").DisplayFormat.Font.Color

Gruß, Uwe
Antworten Top
#4
@Helmut, welche Datei meinst Du?

@ Kuwer, danke für den VBA-Code. Das werde ich ausprobieren. Allerdings ist VBA für mich Neuland.

Gruß
Harald
Antworten Top
#5
(06.12.2023, 15:38)HyFly schrieb: @Helmut, welche Datei meinst Du?
Na die Datei, bei der das genannte Problem auftritt und die du hier hochladen sollst.
Wie gesagt: es gelingt mir nicht genau dein Problem nachzustellen. Ohne das Problem erzeugen zu können, kann man auch nicht helfen. Oder rufst du auch nur in deiner Werkstatt an und fragst "Weshalb macht mein Auto so komische Geräusche?" ohne das Auto selbst vorbei zu bringen?
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
Antworten Top
#6
Moin!
Ich kenne beim besten Willen keinen Vorteil,  den verknüpfte Textboxen ggü Zellen haben könnten.
Würde mich interessieren. 
Folglich: Beispieldatei.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#7
Hi,

leider ist mir immer noch nicht klar, welche Datei ich zu welchem Zweck einfügen soll. Das Problem ist hinlänglich von mir beschrieben worden.
Helmut hat es ja auch schon nachstellen können und festgestellt, dass es bei ihm auch nicht funzt. Es steht im Textfeld auch nicht mehr als die Adresse der "Quellzelle". Diese ist bedingt formatiert.
@Ralf:
Das Textfeld befindet sich in der Kopfzeile meiner Excel Datei. Es ist somit sofort sichtbar. Um den Inhalt der "QuellZelle" einsehen zu können müsste ich durch die Datei scrollen. Um das zu vermeiden nutze ich das Textfeld. Dort lasse ich mir den Inhalt anzeigen.

Es ist zudem eingebettet in eine Form, die ich über ein Macro als Schalter nutze. Es ist dadurch quasi ein Schalter mit Anzeige.
Durch die unterschiedliche Schriftfarbe  wird der "Schaltzustand" symbolisiert. Weisse Schriftfarbe bedeutet: "Schalter steht nicht zur Verfügung", Grüne Schriftfarbe bedeutet: "Schalter steht zur Verfügung". Diese Unterscheidungsmöglichkeit nutze ich, um ausgewählte Zellen direkt anzuspringen. Ich versuche mal einen screenshot einzufügen.
   

So ist der derzeitige Status.
In den grauen Schaltern sind jeweils zwei Textboxen integriert. Die in weisser Schrift bezeichnet den Flugzeugtyp der selektiert wird. Die in blauer Schrift die Anzahl der verfügbaren Flugzeuge dieses Typs. In der Zelle E1 wird die ausgesuchte Airline über eine VBA ActivCell code angezeigt. Nun sollen die Schalter mit den Flugzeugtypen, die die in Zelle E1 ausgewählte Airline hat, grün werden und die nicht verfügbaren weiss bleiben.
Anders ausgedrückt, überall dort, wo in blau eine 0 steht, soll der Schalter weiss bleiben. Dort wo die Zahl >=1 ist, soll die Schriftfarbe in dem Flugzeugtyp-Textfeld auf grün wechseln. Gesteuert werden soll das über eine Tabellenauswertung in ausgeblendeten Zellen in diesem Arbeitsblatt.

In der abgebildeten Situation sollten für die bei Lufthansa vorhandenen Typen die Schrift in den Textfelder grün werden. Tut sie aber nicht. Ich füge noch einen screenshot der Auswertung hinzu, aus dem msan sehen kann, welche Airline welche Flugzeuge hat, und welcher "Farbcode" daraus abgeleitet werden soll.


Angehängte Dateien Thumbnail(s)
   
Antworten Top
#8
Hallöchen,

schon mal die "alte" Kamerafunktion statt eines Textfeldes ausprobiert?
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#9
Hi,
(06.12.2023, 18:23)HyFly schrieb: Helmut hat es ja auch schon nachstellen können und festgestellt, dass es bei ihm auch nicht funzt.
Nein, ich kann es eben nicht nachstellen. Du sagst nämlich, dass bei dir das Textfeld die Farbe ändert, wenn du sie händisch in der Bezugszelle änderst. Und genau das tut es bei mir nicht! Also muss in deiner Datei irgendwas anders sein. Und genau darum geht es.

Wenn es so einfach sein soll, das Problem nachzustellen, wieso weigerst du dich eine Datei hier hochzuladen? Ein Bildchen bringt nun mal gar nichts. Man sollte schon wissen, was genau das für eine Textbox ist. Da gibt es nämlich mindestens zwei verschiedene. Außerdem kann man auch noch diverse Formen wie Rechteck etc. als „Textbox“ mißbrauchen.

Ohne Datei nur noch der Hinweis: hinterleg in einem Event, das mindestens dann triggert, wenn sich eine Bedingung für deine bedingte Formatierung ändert, einen Code der die Farbe ändert. Welches Event das sein könnte? Das hängt von deiner Bedingung ab. Mehr lässt sich ohne nähere Kenntnis deiner Datei leider nicht sagen.
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
Antworten Top
#10
@ Helmut
Es geht um die Schriftfarbe im Textfeld und nicht um die Farbe des Textfeld. das habe ich auch so geschrieben.

Zitat:
In den Quellzellen ist per bedingter Formatierung die Schriftfarbe definiert (= "ON" ; dann Schriftfarbe Farbe Grün) Die Grundformatierung ist Schriftfarbe Weiss. Das klappt auch super.

Die Textfelder habe ich über die Funktion Einfügen > Textfeld  erstellt. Anschließend Rechtsklick ins Textfeld und dann über Form formatieren ins Menue Textoptionen. Dort habe ich die Farbe der Schrift in weiss definiert. Die Option Automatisch, ist da nicht vorhanden. 
Die Schrift in der QuellZelle ist ebenfalls auf weiss gesetzt. Lediglich über die bedingte Formatierung wird sie in grün geändert. Diese Änderung hat wohl auf die Schriftfarbe im Textfeld keinen Einfluss, da sie per Textoption auf weiss gesetzt ist.

Danke für Deinen Tipp es über Event zu versuchen. Dafür muss ich mir allerdings erst einmal VBA-Kenntnisse zulegen., oder?

Daraus schließe ich, dass es ohne VBA nicht zu machen ist.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste