Seite 1 von 1

Hintergrundfarbe einer Zelle per HEX-Wert setzen?

Verfasst: Fr 21. Okt 2022, 09:55
von akoerber
Hallo,
gibt es eine Möglichkeit, eine Zelle mit der Farbe einzufärben, der ihrem (oder einer Nachbar-Zelle) Inhalt in HEX-Farbcode entspricht, also etwa "#003780"?
Dank im Voraus

Re: Hintergrundfarbe einer Zelle per HEX-Wert setzen?

Verfasst: Fr 21. Okt 2022, 12:53
von F3K Total
Hallo,
per Hausmittel geht das nicht, aber mit einer Benutzerdefinierten Funktion (englisch UDF User Defined Function).
Siehe hier:
https://ask.libreoffice.org/t/in-calc-i ... ll/38191/4
Die Funktion liest den HEX-Wert aus einer Zelle aus, erzeugt automatisch eine Zellvorlage mit dem Namen der Farbe und wendet sie, in der Zelle in der sie steht, an. Eine Beispieldatei ist in dem o.a. Beitrag auch verfügbar.
Solltest du in einer deutschen Calc-Umgebung arbeiten, muss die Formel, die dann in die Zelle in Calc eingetragen wird wie folgt lauten:

Code: Alles auswählen

=T(VORLAGE(CRTSTYLESIFNEED(B2;"clr")))
Gruß R

Re: Hintergrundfarbe einer Zelle per HEX-Wert setzen?

Verfasst: So 23. Okt 2022, 09:33
von Helmut_S
Hallo, unter bestimmten Voraussetzungen könnte es auch ohne Makro gehen.
z.B: wenn du die Farbzahl bereits vorher kennst, kannst du dir eine Zellvorlage erstellen und als Name die Hex-Zahl der Farbe verwenden, die in der Zelle nebenan steht. Siehe Screenshot
Gruß Helmut

Re: Hintergrundfarbe einer Zelle per HEX-Wert setzen?

Verfasst: So 23. Okt 2022, 09:55
von F3K Total
Hallo Helmut,
das ist das gleiche Prinzip, nur, dass man die Zellvorlagen von Hand anlegt, statt dies durch eine UDF erledigen zu lassen.
Oder anders, wenn die Farben bekannt sind, und nicht mehr wechseln, kann man die Vorlagen einmalig mit der UDF anlegen lassen, dann die UDF löschen und anschließend deine Formel anwenden.

BSP. anbei

Gruß R

Re: Hintergrundfarbe einer Zelle per HEX-Wert setzen?

Verfasst: Mo 24. Okt 2022, 13:57
von Helmut_S
Hallo, mit einem kleinen Makro geht es auch ohne vorherige Erstellung eines neuen Zellformats. Allerdings muss man den Hex-Farbwert in eine Dezimalzahl umwandeln, damit die Funktion "Cellbackcolor" damit etwas anfangen kann.
Der Zwischenschritt ist in der ausgeblendeten Spalte B.
Das Makro ist an das Tabellenereignis "Auswahl geändert" gekoppelt, also genügt nach eingabe eines neuen Hex-Wertes ein Mausklick in Zelle A2 um das Makro auszulösen. Kann man aber genauso auf eine Schaltfläche legen.
Wirklich zu gebrauchen dürfte der Vorschlag noch nicht sein. Um die Formel herunter-ziehbar zu machen, müsste man das Makro in eine UDF umwandeln. Vielleicht haben die Makro-Spezialisten hier Zeit und Lust, sich der Sache anzunehmen. Vorausgesetzt, der TE hat noch Interesse an einer Lösung.