Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1360to1364
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

Problem mit Excel VBA

Problem mit Excel VBA
27.05.2014 20:54:49
Ralph
Hallo, brauche dringend Hilfe zu Excel VBA
Eine Aktientabelle überwacht live viele Kurse auf Trading-Chancen, verändert und aktualisiert sich dadurch aber auch ständig, wenn sich Kurse und Taxierungen ändern.
Nun möchte ich eine neue Kauffunktion einbauen, die, wenn in einem Feld mit einer Formel eine 1 _ erscheint, einen Kauf ausführt. Ich hab das meiste soweit fertig, nur mit der Überwachung habe ich ein Problem. Mit

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = "$T$21" Then
Mein Code für den Kauf
End Sub

im Objektmodul des Tabellenblattes wird überwacht, ob diese Zelle sich zu einer 1 ändert und in den folgenden Zeilen dann der Kauf ausgelöst.
Problem ist nun aber, der Wert 1 dieser Formel bleibt möglicherweise noch stehen und da das Blatt sich ständig aktualisiert, wird diese Kauffunktion immer wieder ausgeführt und läuft sich tot..
Wie kann ich erreichen, dass der Code nur einmal ausgeführt wird, selbst wenn sich das Blatt ständig aktualisiert. Er wird bisher immer wieder ausgeführt und ich kann nur mit ESC stoppen. Das wäre aber fatal.
Vielen Dank für die Hilfe
Ralph

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem mit Excel VBA
28.05.2014 08:18:22
UweD
Hallo
für die Zeit, während dein Makro arbeitet wird die "Überwachung der Zelländerung" abgeschaltet und danach wieder aktiviert.
Das 2. Mal nur aus Sicherheit, falls mal ein Fehler auftaucht....
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error GoTo Fehler
If Target.Address = "$T$21" Then
Application.EnableEvents = False
'Mein Code für den Kauf
Application.EnableEvents = True
End If
Err.Clear
Fehler:
If Err.Number  0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err. _
Clear
Application.EnableEvents = True
End Sub
Gruß UweD

Anzeige
AW: Problem mit Excel VBA
28.05.2014 09:13:35
Ralph
Das funktioniert fantastisch. Herzlichen Dank

AW: Problem mit Excel VBA
28.05.2014 10:18:40
Ralph
Doch noch ein Problem, sorry.. es funktioniert zwar technisch, allerdings reagiert diese Funktion offenbar nur, wenn man die Zelle von Hand ändert. Ändert sich der Wert darin durch eine Formel mit Bedingungen in anderen Tabellen, bleibt die Ausführung aus. Was kann man da tun ?

AW: Problem mit Excel VBA
28.05.2014 10:27:12
UweD
Hallo nochmal
ungetestet....
Ersetze Worksheet_SelectionChange(ByVal Target As Range)
durch Worksheet_Calculate()
Gruß UweD

AW: Problem mit Excel VBA
28.05.2014 10:37:45
Ralph
Super...Danke schön

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige