Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
376to380
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
376to380
376to380
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makro startet

Makro startet
05.02.2004 19:52:43
FritzF
Hallo Forumler
Habe für Euch echt eine simple Frage, die ich als VBA Anfänger halt noch nicht weiss.
Wie kann ich ein Makro automatisch starten sobald in einer bestimmten Zelle ein Wert berechnet wurde.
Zum Beispiel: Sobald in der Zelle A1 der Wert 100 berechnet wird sollte das Makro x ausgeführt werden.
Danke und Gruss
FritzF

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro startet
05.02.2004 19:59:19
Bert
Der Code muss in das Modul der Tabelle, in der es passieren soll:
Option Explicit

Private Sub Worksheet_Calculate()
If [a1] = 100 Then Call deinMakro
End Sub

Bert
AW: Makro startet
05.02.2004 20:03:17
FritzF
Hallo Bert
Vielen Dank für diesen tollen Service. Ich dachte doch, das kann nicht so schwierig sein, nur wissen muss man es eben.
Gruss
Fritz
Berichtigung, Erweiterung
05.02.2004 20:31:01
Bert
Der Hinweis von Nepumuk ist berechtigt, machs so:
Option Explicit
Dim oldValue

Private Sub Worksheet_Activate()
oldValue = [a1]
End Sub


Private Sub Worksheet_Calculate()
If oldValue = 100 Then Exit Sub
If [a1] = 100 Then Call DeinMakro
End Sub


Private Sub Worksheet_Change(ByVal Target As Range)
oldValue = [a1]
End Sub


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
oldValue = [a1]
End Sub

Bert
Anzeige
AW: Makro startet
05.02.2004 20:07:39
Nepumuk
Hallo Bert,
im Prinzip schon richtig, aber wenn in der Tabelle noch andere Berechnungen laufen die den Wert der Zelle A1 nicht ändern und die Zelle A1 hat den Wert 100, dann wird das Makro von Fritz nochmal ausgeführt.
Gruß
Nepumuk
AW: Makro startet
05.02.2004 20:18:42
Bert
Guter Einwand, wie würdest du das denn verhindern?
Bert
AW: Makro startet
05.02.2004 20:32:08
Nepumuk
Hallo Bert,
eine boolsch Variable in einem Modul (z.B. Public bolA1_100 As Boolean) und dein Makro so ändern:

Private Sub Worksheet_Calculate()
If bolA1_100 Then
If [a1] <> 100 Then bolA1_100 = False
Else
If [a1] = 100 Then
Call deinMakro
bolA1_100 = True
End If
End If
End Sub


Code eingefügt mit: Excel Code Jeanie
Wenn A1 = 100 dann wir das Makro ausgeführt und die Variable gesetzt. Wird wieder berechnet, und A1 = 100 passiert nichts. Wird wieder beechnet und A1 <> 100 dann wird die Variable wieder zurückgesetzt und das Spielchen kann von vorne beginnen.
Gruß
Nepumuk
Anzeige
AW: Makro startet
05.02.2004 21:08:18
FritzF
Hallo Nepumuk und Bert
Vielen Dank für eure Hilfe.
Gruss
Fritz

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige