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.

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)
   
Antworten 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)
Antworten 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)
Antworten Top
#4
Hi,

(29.11.2015, 20: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
Antworten Top
#5
(29.11.2015, 21: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)
Antworten 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 _______
Antworten 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
Antworten 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 _______
Antworten Top
#9
Hi Klaus,

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

Gruß Uwe
Antworten 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)
Antworten Top


Gehe zu:


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