Formatierung von Zelle in Abhängigkeit eines Wertes
#1
Hallo zusammen,

ich habe jetzt lange herumprobiert und viel gelesen; leider habe ich bisher keine richtige Lösung gefunden.

Ich habe eine Excel-Datei mit allen RAL-Farbtönen; diese habe ich bereits angelegt und es gibt jeweils eine Zelle für jeden Farbton mit der korrekten Hintergrundfarbe (RGB-Wert). Davor steht der RAL-Ton in einer Zelle (als Zahlenwert, das RAL steht nur aus optischen Gründen über Format dort).

Jetzt möchte ich in Zelle A1 eines anderen Arbeitsblatts einen Wert eingeben (bspw. für RAL 1000 die "1000"), so dass sich Zelle B1 in der Farbe von RAL 1000 färbt. Genauso sollen dahinter die Farbbezeichnungen erscheinen (also z.B. "Grünbeige" etc.)

Gibt es hierfür eine einfache Lösung?

Danke im Voraus!

P.S.: Im Anhang ein Screenshot zur Verdeutlichung!


Angehängte Dateien Thumbnail(s)
   
Top
#2
Hi,

mit normalen Bordmitteln kannst du mittels Formeln keine Farbe auf andere Zellen übertragen. Das wäre die von dir favorisierte "einfache Lösung". Wenn überhaupt, so ist das nur per Makro möglcih. Da aber müssen dir die VBA-Spezies helfen.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Top
#3
Hallöchen,

bei Deiner Excelversion könntest Du per bedingter Formatierung 64 Farben erreichen. Falls das reicht, ist gut, falls nicht, kannst Du Dich nochmal melden und wir bauen was aus VBA Wink
Der Farbname daneben wäre sicher einfach per SVERWEIS lösbar.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#4
Hi,

(29.11.2015, 21:39)schauan schrieb: Falls das reicht, ist gut, falls nicht, kannst Du Dich nochmal melden und wir bauen was aus VBA Wink
Der Farbname daneben wäre sicher einfach per SVERWEIS lösbar.

für eine VBA-Lösung wäre es sicher gut, wenn wir die komplette Datei hätten.
Die farbigen Texte sind anklickbare Links:

Hier steht, wie es geht:
Beitrag 2 WICHTIG: Arbeitsmappen zur Verfügung stellen
Top
#5
(29.11.2015, 22:57)Rabe schrieb: Hi,


für eine VBA-Lösung wäre es sicher gut, wenn wir die komplette Datei hätten.
Die farbigen Texte sind anklickbare Links:

Hier steht, wie es geht:
Beitrag 2 WICHTIG: Arbeitsmappen zur Verfügung stellen

Hallo zusammen,

erstmal danke für die schnelle Antwort! Ich bin begeistert!

64 Farben werden nicht reichen, da es sich um ca. 200 verschiedene Farbtöne handelt.

Im  Anhang findet sich die Datei; 

Zur Erklärung:
In Arbeitsblatt "RAL Farben" stehen die möglichen RAL-Töne inkl. Bezeichnungen auf 5 Sprachen. In Spalte E ist der Farbton als Hintergrundfarbe eingestellt.

Nun soll im Arbeitsblatt "Vorschriften" der jeweilige Farbton angegeben werden. In die orangen Felder soll der Wert (z.B 7011) eingetragen werden, so dass in Spalte D der Name  auftaucht (in unserem Fall "Eisengrau"). In Spalte F soll das Feld nur die Hintergrundfarbe bekommen, die für RAL 7011 im Arbeitsblatt "RAL Farben" vorgesehen ist.

Ich hoffe, dass das verständlich erklärt ist :) Neben den RAL-Farbtönen gibt es noch die Möglichkeit für "verzinkt". Das dürfte aber normal kein Problem darstellen.


Werde wahrscheinlich dann noch auf ein weiteres Problem stoßen in Zukunft (s. verschiedene Sprachen). Aber da würde ich mich dann noch gesondert zu melden.

Danke schon im Voraus!

Philipp


Angehängte Dateien
.xls   RAL_RGB_Farbkarte.xls (Größe: 119,5 KB / Downloads: 14)
Top
#6
Hi Philipp,

den Namen der Farbe kannst Du mit =SVERWEIS() bestimmen:

Arbeitsblatt mit dem Namen 'Vorschriften'
 BCDEFGHIJ
10RAL 5026 Perlnachtblau   164484

ZelleFormel
D10=SVERWEIS(B10;RAL_Farben!$A$2:$J$215;6;0)
H10=SVERWEIS(B10;RAL_Farben!A2:D215;2;0)
I10=SVERWEIS(B10;RAL_Farben!A2:D215;3;0)
J10=SVERWEIS(B10;RAL_Farben!A2:D215;4;0)

In den Hilfsspalten H, I und J habe ich die RGB-Werte ebenfalls mit SVERWEIS() ausgelesen, die ich über das Worksheet-Change-Ereignis für folgenden Code hinter der Tabelle "Vorschriften" verwende:


Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Range("F10").Interior.Color = RGB(Range("H10"), Range("i10"), Range("J10"))
End Sub


Angehängte Dateien
.xlsm   RAL_RGB_Farbkarte_neu.xlsm (Größe: 40,75 KB / Downloads: 21)
Überlegen macht überlegen
Gruss aus dem schönen Hunsrück
_______ Klaus-Martin _______
Top
#7
Hallo Phillipp,

folgender Code kommt in das schon vorhandene VBA-Modul der Tabelle "Vorschriften":

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 Dim lngZ As Long
 With Target.Cells(1)
   If .Column = 2 Then
     On Error Resume Next
     Application.EnableEvents = False
     If Len(.Value) Then
       lngZ = Application.Match(.Value, Worksheets("RAL_Farben").Range("A1:A215"), 0)
       If lngZ = 0 Then
         .Value = ""
         Cells(.Row, 4) = ""
         Cells(.Row, 6).Interior.Color = xlNone
       Else
         Cells(.Row, 4).Value = Worksheets("RAL_Farben").Cells(lngZ, 6).Value
         Cells(.Row, 6).Interior.Color = Worksheets("RAL_Farben").Cells(lngZ, 5).Interior.Color
       End If
     Else
       Cells(.Row, 4) = ""
       Cells(.Row, 6).Interior.Color = xlNone
     End If
     Application.EnableEvents = True
     On Error GoTo 0
   End If
 End With
End Sub

Gruß Uwe
Top
#8
Moin Uwe,

bist Du sicher, dass Dein Code hinter "RAL-Farben" gehört Angel Sleepy ???
Überlegen macht überlegen
Gruss aus dem schönen Hunsrück
_______ Klaus-Martin _______
Top
#9
Hi Klaus,

danke fürs Aufpassen. Smile
Hab es in meinem vorigen Beitrag berichtigt.

Gruß Uwe
Top
#10
Hallo zusammen,

ihr seid echt wahnsinnig schnell!
Da ich von VBA bisher wirklich sehr wenig (bis keine) Ahnung habe, ist es nun so, dass Klaus' Version funktioniert ::)
Bei verzinkt hätte ich eigentlich noch gerne, dass er einen Verlauf oder ähnliches in das Farbfeld macht; aber ein grauton reicht für den Moment auch.

Wie ihr seht, gibt es ja noch verschiedene Sprachen (derzeit 5).

Habe mal in der angehängten Datei die Sache ein wenig aktualisiert (für 3 Sprachen).

Es sollte die Möglichkeit geben, zu wählen, ob 1 oder 2 Sprachen angezeigt werden; im nächsten Schritt dann natürlich welche (beides vermutlich am einfachsten per Dropdown-Menü).
Im Unteren bereich, also ab Zeile 10 sollte dann entsprechend die richtigen Zeilen ein- bzw. ausgeblendet werden. 

Könnt ihr da bitte auch noch mal behilflich sein?

Danke :)

P.S.: Habe nun gerade gemerkt, dass die Version von Uwe fast schöner ist. Gibt für diese nun ein Arbeitsblatt "Vorschriften VBA"


Angehängte Dateien
.xlsm   RAL_RGB_Farbkarte_neu.xlsm (Größe: 49,78 KB / Downloads: 21)
Top


Gehe zu:


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