Wir wünschen allen Forenteilnehmern ein frohes Fest und einen guten Rutsch ins neue Jahr. x

RGB-Werte suchen und Hintergrund einstellen
#11
Oder:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Application.Intersect(Target, Range("$E$4:$F$199")) Is Nothing Then Exit Sub
   
    sn = Sheets("Filter").Columns(3).SpecialCells(2, 1).Resize(, 7)
   
    For Each it In Application.Intersect(Target, Range("$E$4:$F$199")).SpecialCells(2,1)
      it.Offset(, 2).Interior.Color = xlNone
      For j = 1 To UBound(sn)
        If it = sn(j, 1) Then Exit For
      Next
      If j <= UBound(sn) Then it.Offset(, 2).Interior.Color = RGB(sn(j, 5), sn(j, 6), sn(j, 6))
    Next
End Sub
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
[-] Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:
  • echo
Top
#12
Danke auch dir, @snb

Hasst du den Code in meiner Beispiel-Datei mal getestet?
Wenn ich den Block von rechts kopiere und links einfüge kommen definitiv falsche Formatierungen raus.
200 ist ein dunkles Blau; 138 ein helles Grün.

Wenn ich "zu Fuß" eine weitere Filterfarbe einfüge werden auch unbeteiligte Zellen eingefärbt.

Da der Code von André funktioniert müssen wir das auch nicht weiter verfolgen.
Trotz allem, bedanke ich mich für deine Mühe

Gruß Holger
Top
#13
Du hast die Code nicht analysiert: schade.
Dann hättest du den Tippfehler (sn(j,6) statt sn(j,7)) gefunden.
Meine Code ist übrigens besser (weniger Redundanz).

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    sn = Sheets("Filter").Columns(3).SpecialCells(2, 1).Resize(, 7)
    
    For Each it In Application.Intersect(Target, Range("$E$4:$F$199").SpecialCells(2, 1))
       it.Offset(, 2).Interior.Color = xlNone
       For j = 1 To UBound(sn)
         If it = sn(j, 1) Then Exit For
       Next
       If j <= UBound(sn) Then it.Offset(, 2).Interior.Color = RGB(sn(j, 5), sn(j, 6), sn(j, 7))
    Next
End Sub
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Top
#14
Zitat:Du hast die Code nicht analysiert: schade.
Dann hättest du den Tippfehler (sn(j,6) statt sn(j,7)) gefunden.


Tut mir leid, 
wenn man VBA nur sehr bedingt versteht dann ist es nicht weit her mit der Analyse.. 
Danke für die Korrektur
Holger


>>> erledigt <<<
Top
#15
Aber einfach lesen kann doch jeder hier im Forum.
Erst nach Analyse kann man behaupten dass 'falsche' Ergebnisse rauskommen.
Wenn du nichts lernen willst ist dieses Forum vielleicht nicht für dich geeignet.
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Top
#16
Zitat:Aber einfach lesen kann doch jeder hier im Forum.

Ja das kann ich !

Zitat:Erst nach Analyse kann man behaupten dass 'falsche' Ergebnisse rauskommen.

das habe ich versucht, meine Kenntnisse reichen da aber nicht und ohne Hilfe kann ich nur die Änderungen verfolgen.

Zitat:Wenn du nichts lernen willst ist dieses Forum vielleicht nicht für dich geeignet.


Du solltest anderen nicht etwas unterstellen, wenn du sie nicht kennst!
Ich fand es für mich richtig, deinen Code auszuprobieren obwohl ich diesen Beitrag bereist als erledigt markiert habe.
Ich finde es auch toll wenn andere für mich Lösungswege aufzeigen. 

Ich habe dabei festgestellt das einiges nicht funktioniert. 
Mit meinen Kenntnissen kann ich der Syntax leider nicht folgen.
Ich habe rum gestochert. 
Das habe ich auch jetzt wieder versucht, als Laufzeitfehler angezeigt werden wenn ich irgendwo etwas eintrage.
Ich kann es aber leider nicht. 

Wenn dich das auf die Palme bringt, das andere es nicht können, dann tut es mir aufrichtig leid, kann es aber nicht ändern.
Ich habe eine Lösung und möchte es daher gerne hierbei belassen.
Gruß Holger
Top


Gehe zu:


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