Anzeige
Archiv - Navigation
852to856
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
852to856
852to856
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Formel ändert sich --> Ereignis?

Formel ändert sich --> Ereignis?
20.03.2007 09:36:59
Markus
Hi!
Ich habe folgendes Problem, am einfachsten ist es anhand eines Beispiels erklärt.
Sheet:
A1: 5
A2: 10
A4: =A1+A2
Wenn ich mit Hilfe von Worksheet_Change abfrage ob sich A4 ändert, wird dieses Ereignis nur ausgelöst wenn ich direkt etwas in A4 reinschreibe (also die Formel überschreibe) aber nicht wenn sich A1 oder A2 ändert.
Genau dafür brauche ich aber ein Ereignis.
Wie kann ich ein Ereignis auslösen wenn sich der Wert der Formel von A4 ändert?

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel ändert sich --> Ereignis?
20.03.2007 09:40:00
Hans
Hallo Markus,
verwende das Calculate-Ereignis.
Gruss hans
AW: Formel ändert sich --> Ereignis?
20.03.2007 09:45:29
Markus
Hi!
Wow, mit einer so schnellen Antwort hab ich ja nicht gerechnet!
Vielen Dank erstmal!
Wie kann ich aber prüfen ob sich genau A4 verändert und nicht eine andere Zelle? (so weit ich das verstehe wird ja Worksheet_Calculate bei einer Änderung in jeder beliebigen Zelle aufgerufen).
Bei Worksheet_Change habe ich ja dieses schöne "Target As Range" als Argument mit dem ich Abfragen kann ob sich A4 geändert hat.
Geht sowas auch bei Worksheet_Calculate?
AW: Formel ändert sich --> Ereignis?
20.03.2007 09:49:00
Hans
Hallo Markus,
Calculate wird zwar nicht bei jeder Änderung einer Zelle, aber bei der Kalkulation von Formeln aufgerufen, aber die Möglichkeit der Anzeige der veränderten Formel-Zelle gibt es nicht.
Du könntest das Change-Ereignis verwenden, es aber nicht auf die Formel- sondern auf die Werte-Zellen beziehen.
Gruss hans
Anzeige
AW: Formel ändert sich --> Ereignis?
20.03.2007 10:23:00
Markus
Ohje, dann werde ich es wohl so machen müssen.
Danke für die Hilfe!
AW: Formel ändert sich --> Ereignis?
20.03.2007 10:10:00
Mac4
Hallo Markus,
hier eine kleine "Krücke", um das hinzubekommen:
Dazu gehst Du folgendermaßen vor. Du erstellst irgendwo eine Formel (in A1 =A4,die unter Zugriff auf Deine Zielzelle eine harmlose Berechnung durchführt.
Du musst dafür sorgen, dass das Ergebnis dieser Zelle (in einer globalen Variablen) gespeichert wird. Wenn dann das Claculate-Ereignis eintritt, musst Du in der Ereignis-Prozedur überprüfen, ob jetzt noch das vorherige oder ob ein neues Ergebnis vorliegt.
Wenn letzteres der Fall ist, ist das der Beweis dafür, dass in Deiner Zielzelle nun was anderes steht und die Folgeprozedur kann nun gestartet werden.
Dim rng_target As Range
Dim str_Old As String
Dim str_New

Private Sub Worksheet_Calculate()
Set rng_target = Range("a1")
str_New = rng_target
If str_New  str_Old Then
MsgBox "Wert hat sich geändert"
str_Old = str_New
End If
End Sub

Hoffe, das hilft Dir weiter.
Marc
Anzeige
AW: Formel ändert sich --> Ereignis?
20.03.2007 10:27:00
Markus
Brilliant! Funktioniert in meinem Testprojekt erstklassig. Werd es jetzt mal in das "eigentliche" Projekt einarbeiten und schauen ob das funktioniert.
Vielen, vielen Dank! Ich glaub das ist die richtige Spur!

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige