Farbige Zelle in EXCEL als Auslöser für Rechenoperation

Dieser Thread ist Teil einer Diskussion zu einem Artikel:  Zum News-Artikel gehen

Heinrich Gautschi

Neues Mitglied
Gibt es eine Möglichkeit, dass eine farbige Zelle in EXCEL eine Rechenoperation auslösen kann. z. B.
Wenn Zelle A dunkelgrün, dann multipliziere Zelle B mit Zelle C und setze das Resultat in Zelle D ein.
Wenn Zelle A andersfarbig, dann keine Berechnung.
 
Hallo Heinrich,

soll die Berechnung in dem Moment passieren, in dem du die Zelle umfärbst. Da sehe ich momentan keine Möglichkeit.
Anders sieht es aus, wenn du einen Makro starten willst, der prüft, ob die Zelle eine bestimmte Farbe hat und davon abhängig Berechnungen macht. So etwas könnte ich dir schreiben.

Grüße, Andreas
 

Heinrich Gautschi

Neues Mitglied
Hallo Andreas,

Vielen Dank für deine Antwort. Das optimalste wäre natürlich, wenn ich z.B. die Zelle A von rot auf grün umfärbe und dann die Berechnung erfolgen würde.

Freundliche Grüsse Heinrich
 
Das ist eine echte Herausforderung!
Zusatzfrage: Von wievielen Zellen reden wir, die umgefärbt werden sollen, woraufhin etwas passieren soll? Sind das nur ein paar, ist es eine komplette Spalte, oder gar das ganze Arbeitsblatt ...?
Ich frage, weil ich mir überlegt habe, wie man so etwas mit einem Makro realisieren könnte. Wenn es nicht um zu viele Zellen geht, könnte man Folgendes versuchen:
Der Makro wird automatisch gestartet, wenn du die Mappe öffnest. Im ersten Schritt schaut es sich dann alle Zellen an, die eventuell umgefärbt werden können und speichert deren Farbe.
Dann dreht der Makro ständig im Hintergrund seine Kreise und schaut sich wieder die Zellenfarben an. Sobald er eine Änderung zu den bisherigen Farben feststellt, führt er die Rechnungen aus. Dann speichert er die neuen Farben und geht wieder in Lauerstellung.
Wenn die Mappe geschlossen wird, wird er automatisch beendet.
Das ganze ist aber nur realistisch, wenn die Zahl der Zellen, deren Farbe möglicherweise geändert wird, nicht zu riesig ist. Sonst schluckt er ganz schön CPU-Zeit.
Außerdem könnte es vermutlich Probleme geben, falls du noch andere Makros laufen lässt.
Also: Um wieviele Zellen geht es? Und gibts noch andere Makros?

Grüße, Andreas
 

Korni

Mitglied
Hallo Heinrich
Was soll die farbige Zelle bewirken, ist das nur eine optische Darstellung oder hat es noch einen weiteren Grund??

Ich denke, soll es nur eine optische Darstellung sein, dass du mit einer "Bedingten Formatierung" auch zurecht kommen könntest, deine Aufgabe also auch ohne Makro lösbar wäre. Zudem bietet meine Lösung den Vorteil, dass du mit der Tastatur den Rechnungsvorgang starten oder stoppen könntest, ohne immer umständlich die Farben wechseln zu müssen ;)

Die Rechenoperation in meinem Beispiel wird durch eine Zahl in der Zelle A ausgelöst. Die Farbe der Zelle wie auch die der Schrift ändert mittels "Bedingte Formatierung" aufgrund der Eingabe, die Berechnung ist mit einer Wenn-Dann-Formel mit Abfrage der Zelle A einfach zu lösen.

Folgendes Beispiel mit der Zahl 1 als Funktionsauslöser

Beispiel für Rechnen = Ja:
Zelle A, Farbe grün mit Wert 1 soll die Berechnung auslösen.
Bedingte Formatierung = Zelle A grün ausfüllen und Schriftfarbe das gleiche grün bei Inhalt = 1

Beispiel für Rechnen = Nen:
Zelle A, Farbe rot mit Wert <>1 soll die Berechnung NICHT auslösen
Bedingte Formatierung = Zelle A rot ausfüllen und Schriftfarbe das gleiche rot bei Inhalt <> 1

Wenn-Dann-Formel in Zeile D wie folgt: "=Wenn ( a1 = 1 ; b1 * c1 ; 0 )"

Was meinst du dazu?

Gruss, Hansruedi
 
Zuletzt bearbeitet:

Thomas Ramel

Stammgast
Vielen Dank für deine Antwort. Das optimalste wäre natürlich, wenn ich z.B. die Zelle A von rot auf grün umfärbe und dann die Berechnung erfolgen würde.
Grüezi Heinrich

Das wird sich genau so nicht realisieren lassen - es gibt ein Excel kein Ereignis das ausgelöst wird, wenn eine Zelle manuell eingefärbt wird.

Du könntest per VBA-Programmierung eine eigene Funktion erstellen, die dann wie eine der eingebauten Funktionen verwendbar ist.
Diese Funktion kann auf Farben einer Zelle reagieren und entsprechende Berechnungen anstossen.

Allerdings kann diese Funktion nicht automatisch ausgeführt werden sondern maximal dann, wenn die Mappe aus anderen Gründen neu berechnet wird. Dies ist dann der Fall, wenn andere Funktionen sich aufgrund neu eingegebener Eingabe-Werte neu berechnen oder F9 gedrückt wird.

In deinem Falle würde die Funktion dann in Zelle D stehen und entsprechend die Berechnung vornehmen.


Herzliche Grüsse
Thom
 
Oben