online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon bluecard vom 02.04.2020, 14:54 Options

Füllfarben vergleichen

Hallo,

ich möchte die Füllfarben zweier Spalten einer Tabelle (E und R) miteinander vergleichen und in einer dritten Spalte (B) das Ergebnis als Füllfarbe ausdrücken.

Die Formatierung soll folgende Form besitzen (nach Index)

B E R
3 = 3 und 3
3 = 3 und 44
3 = 3 und 50
3 = 3 und 33
3 = 50 und 3
50 = 50 und 45
50 = 50 und 50
50 = 50 und 33



Ich habe folgendes probiert, aber es klappt nicht....

[/ 'Beginn der Farbzuweisung für den Gesamtstatus

Dim LoI As Long ' Schleifenvariable
Dim LoLetzte5 As Long ' Variable letzte Zeile in Spalte E
Dim LoLetzte18 As Long ' Variable letzte Zeile in Spalte R


' letzte belegte Zeile unabhängig von Excelversion für Spalte E(5) und R (18)
LoLetzte5 = IIf(IsEmpty(Cells(Rows.Count, 5)), Cells(Rows.Count, 5).End(xlUp).Row, .Rows.Count)
LoLetzte18 = IIf(IsEmpty(Cells(Rows.Count, 18)), Cells(Rows.Count, 18).End(xlUp).Row, .Rows.Count)
If LoLetzte18 > LoLetzte5 Then LoLetzte5 = LoLetzte18 ' maximale Zeilenanzahl von Spalte A und B
For LoI = 5 To LoLetzte5
If .Cells(LoI, 5).Interior.ColorIndex = 3 And .Cells(LoI, 18).Interior.ColorIndex = 50 Then ' Vergleich ob Zelle Spalte E und Zelle Spalte R die gleiche Füllfarbe besitzen
.Cells(LoI, 2).Interior.ColorIndex = 3 ' Füllfarbe setzen

End If
Next LoI
End With
Application.ScreenUpdating = True ' Bildschirmaktualisierung ein ]

Vielleicht kann mir jemand weiterhelfen.

Liebe Grüße,
bluecard


Antwort schreiben

Antwort 1 von Saarbauer vom 02.04.2020, 15:11 Options

Hallo,

da es anscheinend nur ein Teil des Makro's ist nur ein paar Fragen:

1. Der Befehl "While ......" ist anscheinend vor dem hier vorliegenden Teil
2 Sinn der Abfrage nach leerer Zeile verstehe ich nicht
Zitat:
LoLetzte5 = IIf(
Zitat:
IsEmpty(Cells(Rows.Count, 5))
, Cells(Rows.Count, 5).End(xlUp).Row, .Rows.Count)

da du nach der letzten Zeile anschliessend noch fragst.
3. Warum fragst du innerhalb der Schleife jedesmal die letzte Zeile ab ?
Zitat:
LoLetzte5 = IIf(IsEmpty(Cells(Rows.Count, 5)), Cells(Rows.Count, 5).End(xlUp).Row, .Rows.Count)


Es kann natürlich mit dem übrigen Makro zusammenhängen, das uns unbekannt ist

Gruß

Helmut

Antwort 2 von bluecard vom 02.04.2020, 15:49 Options

Hallo Helmut,

vielen Dank für die schnelle Reaktion.

zu1.
habe ich "While..." verwendet?...
Leider habe ich mich erst seit zwei Tagen mit VBA beschäftigt und aus verschiedenen Artikeln mir ein bisschen was zusammen kopiert.. :)

zu2. und 3.
ich dachte mir, dass ich vorher vielleicht überprüfe, ob die Zelle überhaupt eine Füllfarbe enthält. Ist aber vielleicht auch zu kompliziert gedacht...

Mit dem restlichen Teil des Makros hat dies eigentlich nicht zu tun.
Ich habe vorher nur eine drop-down-Liste erstellt, wo Farben hinterlegt waren.
Zum Beispiel

Spalte E (Beleg unvollständig= rot) und Spalte R(Bankverbindung fehlt =rot).

Das hatte auch alles ganz gut geklappt.

Nun soll in einer dritten Spalte (B) immer ausgegeben werden, welche Kombination sich in den anderen ergeben hat - und entsprechend ein Endresultat mit Füllfarbe:

Also, wenn Spalte E= rot und Spalte R= rot, dann mache Spalte B=rot .... entsprechend den vorher beschriebenen Kategorien.

Ich hoffe die Antwort ist zufrieden stellend...
Liebe Grüße,
bluecard

PS: wie kopiere ich eigentlich den code ordentlich ins Forum?
wenn ich auf "code" klicke und dann den code in die Klammern setzte klappt dies anscheinend nicht so toll wie bei den anderen...

Ähnliche Themen

Excel - Daten vergleichen und niedrigsten Wert markieren
Racerking33  11.04.2007 - 355 Hits - 1 Antwort

excel dateien vergleichen
trini9  30.08.2007 - 658 Hits - 2 Antworten

4 versch. Füllfarben in EXcel
RoSa  25.11.2007 - 77 Hits - 6 Antworten

vergleichen
offi  23.04.2008 - 88 Hits - 5 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Mon Jan 26 01:23:17 2026