Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Private Sub tbVE_Exit irgendwas falsch

Forumthread: Private Sub tbVE_Exit irgendwas falsch

Private Sub tbVE_Exit irgendwas falsch
21.02.2024 10:45:40
Ray
Moin moin,

ich mache:

Private Sub UserForm_Initialize()
tbVE.Text = Worksheets("datenOutput").Range("x2").Value
tbVE.SetFocus

Dim chk As String
chk_tbVE = tbVE
MsgBox chk_tbVE & tbVE
End Sub

und will dann schauen ob die Textbox beim verlassen anders aussieht als sie geladen wurde:

Private Sub tbVE_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If tbVE = chk_tbVE Then
MsgBox "ERR"
End If
MsgBox "" & tbVE & chk_tbVE
End Sub

MsgBox habe ich mal zum Test eingefügt, es ist beides das gleiche aber MsgBox "Err" kommt nicht.

Was mach ich falsch?

VG Ray
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Private Sub tbVE_Exit irgendwas falsch
21.02.2024 11:03:46
GerdL
Hallo Ray!

Die Prozedur Private Sub tbVE_Exit kennt die Variable chk_tbVE nicht
bzw. deren Gültigkeitdauer ist auf die Prozedur Private Sub UserForm_Initialize begrenzt.
Deklariere diese Variable auf Modulebene (ganz oben) oberhalb der beiden Prozeduren.

Gruß Gerd
AW: Private Sub tbVE_Exit irgendwas falsch
21.02.2024 11:10:48
daniel
Hi
wenn du Variablen in mehreren Makros eines Moduls verwenden willst, dann muss die Deklaration dieser Variable am Anfang des Moduls erfolgen, ober halb der Markos.
ich empfehle zusätzlich die Verwendung von Option Explicit (es dürfen nur deklarierte Variablen verwendet werden)

option explicit

Dim chk_tbVE As String

Private Sub UserForm_Initialize()
tbVE.Text = Worksheets("datenOutput").Range("x2").Value
tbVE.SetFocus
chk_tbVE = tbVE
MsgBox chk_tbVE & tbVE
End Sub


Private Sub tbVE_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If tbVE = chk_tbVE Then
MsgBox "ERR"
End If
MsgBox "" & tbVE & chk_tbVE
End Sub

deklarierst du eine Variable innerhalb eines Makros, so ist diese Variable nur in diesem Makro bekannt.
Wenn du dann in einen anderen Makro eine Variable mit gleichem Namen verwendest, dann sind es trotzdem zwei unterschiedliche Variablen, die nicht miteinander zu tun haben.
so wie du es machst, hat chk_tbVE im EXIT_Makro den Wert "", weil es eine andere Variable ist als die im INITIALIZE-Makro.

Gruß Daniel
Anzeige
AW: Private Sub tbVE_Exit irgendwas falsch
21.02.2024 11:49:56
Ray
Danke Bro
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige