Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1384to1388
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ampelfarbe Automatik

Ampelfarbe Automatik
14.10.2014 09:49:44
Björn
Hallo,
ich habe hier mal wieder etwas und weiß nicht weiter.
Ich habe eine Ampel, die den Gesamtstatus wiedergibt. Momentan funktioniert diese manuell per Mausklick. Ich hätte da gerne eine Automatik drin.
Ich habe also eine Spalte mit der ich durch Ampelfarben etwas bewerte. Der GEsamtstatus soll immer den schlechtesten Fall darstellen (Rot=n.i.O; Gelb=mittel; Grün=i.O).
Ist die Spalte also grün und eine Zelle rot, dann Ampel gleich rot. Das gleiche mit Rot/gelb und gelb/grün. Wenn alles grün, dann Ampel grün. Ich bekomme diese Abfrage nicht rein.
In der Beispielliste mal die momentane manuelle Version.

Die Datei https://www.herber.de/bbs/user/93152.xlsm wurde aus Datenschutzgründen gelöscht


Vielleicht kann mir ja jemand helfen.
Grüße,
Björn

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ampelfarbe Automatik
14.10.2014 10:43:30
yummi
Hallo Björn,
ich hab mal 1 für grün
2 für gelb
3 für rot
gesetzt, wenn du einen Wert änderst, dann ändert sich die Ampel auf den schlechtesten Wert.
https://www.herber.de/bbs/user/93153.xlsm
Gruß
yummi

AW: Ampelfarbe Automatik
14.10.2014 12:45:10
Björn
Hi, danke schon mal. Kann ich das auch durch eine Abfrage der Farbinformation machen?
Find(Color = RGB(0,255,0)) zum Beispiel, funktioniert irgendwie nicht.

AW: Ampelfarbe Automatik
14.10.2014 13:01:41
yummi
Hallo Björn,
das geht normalerweise so:

Public Function HFarbeZählen(Bereich As Range, Farbe As Integer)
Dim Zelle As Range
Application.Volatile
For Each Zelle In Bereich
If Zelle.Interior.ColorIndex = Farbe Then
HFarbeZählen = HFarbeZählen + 1
End If
Next Zelle
End Function
Allerdings geht das nur für Zellen die nicht mit bedingter Formatierung gefärbt sind so viel ich weiß. Die Zellen bei dir habe ich mit bedingter Formatierung gefärbt, des halb ja die Werte 1 2 3.
Wenn du also eine 1,2 oder 3 in eine Freie zelle der sleben Spalte schreibst färbt sich die Zelle automatisch ein.
Gruß
yummi

Anzeige
AW: Ampelfarbe Automatik
14.10.2014 13:04:17
Daniel
Hi
es gibt derzeit (Office 2010) in Excel und VBA nur eine Methode, welche die Farben, die durch die bedingte Formatierung erzeugt werden, erkennen und verarbeiten kann.
Das ist der AUTOFILTER.
Alle anderen Metoden und Abfragen greifen immer nur auf die normalen Formte der Zelle zu.
Wenn du also direkt die Farben der Bedingten Formatierun für die Steuerung der Ampel verwenden willst, müsstest du:
- alle Werte in einer Spalte haben
- die Spalte der Reihe nach grün/gelb/rot filtern
- überprüfen, wieviele sichtbare Zeilen die gefilterter Liste hat und wenn mehr als keine, dann die entsprechende Ampelfarbe setzen
da das meistens nicht so praktikabel ist, überprüft man lieber die Werte und setzt die Ampelfarbe ausgehend von den Zellwerten (wenn man in der Programmierung die selben Bedingungen verwendet wie in der Bedingten Formatierung sollte auch dasselbe rauskommen).
es gab in der zwischenzeit schon einige Versuche dieses Problem zu lösen, aber die Lösungsansätze sind so kompliziert, dass sie für den Normalanwender nicht praktikabel sind.
Gruß Daniel

Anzeige
AW: Ampelfarbe Automatik
14.10.2014 13:56:39
Björn
okay, dann lasse ich das so. Ich möchte jetzt statt der Zahlen dann rot, gelb und gruen per Dropdown als Text vorgeben. Dass nimmt der so aber nicht an. Was mache ich falsch? Welche Find Methode muss man da anwenden? Nehmt es mir nciht übel, aber ich sehe den Wald vor lauter Bäumen nicht mehr. VBA usw ist eher noch so ein Hassthema.

AW: Ampelfarbe Automatik
14.10.2014 14:22:21
Daniel
Hi
wenn VBA dein Hass-Thema ist, dann gibts ja auch andere Möglichkeiten.
du kannst beispielsweise die Ampeln aus Text und bedingter Formatierung auf einem verdeckten Blatt erstellen und dann per verknüpfter Grafik an die passende Stelle einfügen
https://www.herber.de/bbs/user/93161.xlsx
Gruß Daniel

Anzeige
AW: Ampelfarbe Automatik
14.10.2014 14:30:55
Björn
Das hatte ich auch schon, ist aber nicht so schön. ICh möchte eigentlich nur, dass der nach rot, gelb, gruen als Text sucht und nicht nach 1,2,3. Keine Ahnung, weshalb das nicht funktioniert. Habe die Suchfunktion als Makro aufgezeichnet, kann es aber scheinbar nicht in den anderen Code übertragen.

AW: Ampelfarbe Automatik
14.10.2014 14:45:48
Daniel
"Schön sein" war noch nie ne Stärke von Excel.
Der Vorteil von Excel ist, wenn man beim "Schön sein" ein paar Abstriche macht, man mit wenig Aufwand bzw Wissen viel erreichen kann.
Wie sieht denn dein Code aus?
Gruß Daniel

AW: Ampelfarbe Automatik
14.10.2014 14:52:55
Björn
Mittlerweile wieder wie zu Anfang nur statt find(1,2,3) find(rot) und da haut der mir den Fehler rein.
Die Sache ist, dass ich nicht der einzige bin, der mit dieser Tabelle arbeitet. Hilfsspalten bedeuten dann immer zusätzliche Gefahren, das jemand versehentlich Fehler reinhaut. Das ist auch der Grund, weshalb ich das ändern wollte. Die Idee war gut, nur happerts mit der Umsetzung.
Hier die Beispielliste: https://www.herber.de/bbs/user/93164.xlsm

Anzeige
AW: Ampelfarbe Automatik
14.10.2014 15:10:56
Daniel
Hi
warum da mit FIND und rng arbeiten?
probiers mal mit folgendem Code dein iMax zu bestimmen:
If Worksheetfunction.CountIf(Range("B:B"), "grün") > 0 Then iMax = 1
IF Worksheetfunction.CountIf(Range("B:B"), "gelb") > 0 Then iMax = 2
If Worksheetfunction.CountIf(Range("B:B"), "rot") > 0 Then iMax = 3
über die Reihenfolge wird hier die Dominanz bestimmt, weil "rot" als letztes geprüft wird, wird die Ampel rot sobalt mindestens ein rot vorhanden ist.
Gruß Daniel

AW: Ampel... [GELÖST]
15.10.2014 09:45:36
Björn
Hallo Daniel,
danke dir. Hab es jetzt hinbekommen und es funktioniert genau so, wie ich es benötige.
Schönen Tag noch.
Grüße,
Björn

Anzeige
AW: Ampelfarbe Automatik
14.10.2014 14:06:02
Björn
okay, dann lasse ich das so. Ich möchte jetzt statt der Zahlen dann rot, gelb und gruen per Dropdown als Text vorgeben. Dass nimmt der so aber nicht an. Was mache ich falsch? Welche Find Methode muss man da anwenden? Nehmt es mir nciht übel, aber ich sehe den Wald vor lauter Bäumen nicht mehr. VBA usw ist eher noch so ein Hassthema.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige