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

kniffliges Problem mit Change-Ereignis

kniffliges Problem mit Change-Ereignis
02.07.2003 17:01:35
Karsten
Hallo zusammen,
ich habe in meiner Userform zwei Textfelder (TextBox1, TextBox2). In der einen gebe ich ein Kürzel ein. Das Change-Ereignis wird ausgelöst und mittels VBA eine Liste verglichen. Der Rückgabewert ist eine Zeichenfolge, di in TextBox 2 ausgegeben wird. Ich möchte jedoch auch durch die Eingabe in TextBox2 (hier natürlich die Zeichenfolge) die Ausgabe des entsprechenden Kürzels in TextBox1 ermöglichen. das Problem liegt nun im Change-Ereignis. Es entseht eine Endlosschleife, da jede Änderung in den Textfeldern Änderungen in dem jeweils anderen textfeld verursacht und somit wieder das change-Ereignis auslöst. Ich versuche derzeit mittels einer Variablenübergabe (True/False) den Codeablauf zu unterbrechen, schaffe es jedoch nicht. Kann mir jemand helfen oder erklären wie ich eine Variable im Change-Ereignis übergeben kann?
Herzlichen Dank
Karsten

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: kniffliges Problem mit Change-Ereignis
02.07.2003 17:39:15
Max
Moin,
lese einfach in eines der change-ereignisse die Werte aus beiden Textboxen ein und entscheide dann mittels if-Abfrage ein, ob sich der Inhalt überhaupt ändern wird.
Ich habe das mal mit Worksheet.change gemacht, das funzt. Hier mein Code
in der Tabelle1:

Private Sub Worksheet_Change(ByVal Target As Range)
T1 = Sheets("Tabelle1").Cells(1, "a").Value
Sheets("Tabelle2").Cells(2, "b").Value = T1
End Sub

in der Tabelle2:

Private Sub Worksheet_Change(ByVal Target As Range)
T1 = Sheets("Tabelle1").Cells(1, "a").Value
T2 = Sheets("Tabelle2").Cells(2, "b").Value
If T1 <> T2 Then
Sheets("Tabelle2").Cells(2, "b").Value = T1
End If
End Sub

Natürlich muss bei dir der vergleich erst die werte aus liste einlesen.
Viel erfolg!

Anzeige
AW: kniffliges Problem mit Change-Ereignis
02.07.2003 18:21:23
Karsten
Danke für den Tip,
bei mir findet das ganze allerdings nicht im Worksheet-Objekt statt sondern in einer Userform. Hier funktioniert das glaube ich nicht.
Karsten

AW: kniffliges Problem mit Change-Ereignis
02.07.2003 17:11:09
Knut
Deklarier eine boolsche Variable auf Modulebene. Im Change- Ereignis
der 1. textbox setzt du sie auf True.
Im Change- Ereignis der 2. textbox machst du eine Abfrage
If bolVariable Then Exit sub
Knut

AW: kniffliges Problem mit Change-Ereignis
02.07.2003 18:18:31
Karsten
Danke Knut zunächst für Deine Antwort,
aber genau das ist das Problem. Es muß ja auch wieder rückwärts gehen, so daß ich bei Änderung in der anderen Textbox den Code zum laufen bringe. Ich weiß einfach nicht wie ich die boolsche Variable übergeben soll. Das nachfolgende Beispiel funkktioniert nicht:

Sub TextBox1_change(Var1 as Boolean)
If Var1 = True then Exit sub
End if
Code ausführen
End Sub

Karsten

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige