Variable wird nicht übergeben
#1
Hallo Leute,

ich habe in einem Modul eine Variable deklariert:


Code:
Public strPnr As String



In Userform3 habe ich eine ComboBox aus welcher ich den Wert der Combobox entweder an eine Textbox in Userform1 übergebe (das funktioniert) oder in die Variable schreibe.


Code:
Private Sub ComboBox1_Change()
   If UserForm1.TextBox3.Visible = True Then
       UserForm1.TextBox3.Value = UserForm3.ComboBox1.Value
   Else
       strPnr = UserForm3.ComboBox1.Value
   End If
   Unload UserForm3
End Sub


Nun will ich in einem anderen Sub der Userform1 auf die Variable zugreifen, diese ist aber immer leer.

Code:
If .TextBox3.Visible = False Then
       UserForm3.Show
       Debug.Print strPnr 'zum Test ob Variable übergeben wird


Hat jemand sachdienliche Hinweise, die mich zur Lösung führen  :19:?

Danke und Gruß
Ich
Top
#2
Hallo,

könntest Du deine Datei hier hochladen damit man das nicht nachbauen muss?
Gruß Stefan
Win 10 / Office 2016
Top
#3
Hi Stefan,

Danke für die schnelle Antwort.
Das ist so ohne weiteres leider nicht möglich. Es geht immer noch um ein Projekt aus meinem vorherigen Posting. Es hängt also eine Access-DB dran welche die Daten bevorratet.
Ich hoffe wir bekommen das auch so hin?!

Noch eine weitere Frage, da es das erste Mal ist, dass ich mit Public Variablen arbeiten will/muss.
Wenn ich in einem anderen Sub der UF1 auch noch eine Variable namens strPnr deklariere, kann dass das Problem sein?

Gruß
Ich
Top
#4
Hallo,

innerhalb einer Prozedur/Funktion gelten die Variablen nur für diese Prozedur/Funktion und können nicht zu deinem Problem führen.
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • IchBinIch
Top
#5
Ich hab das Problem gefunden!

Ich hatte noch eine Laufzeitvariable in der UF1 aus meinem ersten Gehversuch Blush


Code:
Option Explicit
Dim bolVergleich As Boolean
Dim strPnr as String

Danke für die Mühe!

Gruß
Ich
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste