Anzeige
Archiv - Navigation
1328to1332
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

Endlosschleife in Change-Ereignis

Endlosschleife in Change-Ereignis
31.08.2013 12:46:42
Franz
Hallo Fachleute,
ich möchte aus einem Sheet mit Datumsangaben alle Datümer ab einem Datum, das in A4 eingegeben wird, einlesen. Ich hab das so versucht:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim iRowTB1_A As Integer, iRowTB1_B As Integer
Dim iRowTB_12 As Integer
If Target.Cells.Count > 1 Then Exit Sub 'bei Markierung mehrerer Zellen
If Target  Range("A4") Then Exit Sub  'bei jeder anderen Zelle AUSSER  "A4"
With Tabelle1
iRowTB1_A = 3
Do Until .Cells(iRowTB1_A, 6) = Tabelle12.Cells(4, 1)
iRowTB1_A = iRowTB1_A + 1
Loop
iRowTB1_B = iRowTB1_A + 1
iRowTB_12 = 5
Do Until .Cells(iRowTB1_B, 6) 

Damit bekomme ich aber eine Endlosschleife, weil bei jedem Eintrag in die Zieltabelle im Blatt "Tabelle12" das Change-Ereignis erneut losgetreten wird.
Kann ich das irgendwie unterbinden? Und wenn ja, wie? Oder muss ich einen gänzlich anderen Weg versuchen?
Danke schonmal und Grüße
Franz

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

Betreff
Datum
Anwender
Anzeige
EnableEvents
31.08.2013 13:09:13
Erich
Hi Franz,
schau dir mal
Application.EnableEvents
an.
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

AW: Endlosschleife in Change-Ereignis
31.08.2013 13:14:49
Gerd
Hallo Franz,
damit
If Target Range("A4") Then Exit Sub 'bei jeder anderen Zelle AUSSER "A4"
prüfst du, ob der Wert jeder (x-beliebigen) veränderten Zelle im Blatt sich vom Wert in A4 unterscheidet.
Soll der Code nur laufen, wenn in A4 eine Eingabe (oder Änderung per Code) erfolgt, dann prüfe, ob
Target.Address = "$A$4"
bzw. für Exit Sub auf .
Gruß Gerd

@ Erich und Gerd
31.08.2013 13:27:06
Franz
Hallo Erich und Gerd,
das sind zwei Superlösungen, sie funktionieren beide.
Als Laie erscheint mir (rein gefühlsmäßig!) die Lösung mit Target.Address "$A$4" "sicherer", weil ich nicht weiß, was "EnableEvents" sonst noch so macht. ABer das ist wahrscheinlich Blödsinn, "EnableEvents" ist wahrscheinlich genauso sicher.
Auf jeden Fall vielen Dank an Euch beide, Ihr hab mir sehr geholfen.
Grüße
Franz

Anzeige
AW: @ Erich und Gerd
31.08.2013 13:45:10
Hajo_Zi
Hallo Franz,
es wird die Reaktion auf Zellveränderung abgeschalten. Man darf nur nicht vergessen es wieder einzuschalten, auch bei Fehler.

Danke für die Erklärung, Hajo o.T.
31.08.2013 13:47:28
Franz
...

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige