AW: Wert Userform2 in Textbox Userform1 schreiben
19.10.2015 00:39:04
fcs
Hallo Lars,
wenn du die 2. Userform nur ausblendest (Hide-Methode), dann stehen die Werte der Steuerelemente im 1. Userform noch zur Verfügung.
Nachfolgend, wie der Code in den Code-Modulen der beiden Userformen aussehen kann, wenn du im Userform1 mehrere TB via Userform2 ausfüllen möchtest.
Gruß
Franz
'Code im Userform1
Private Sub prcGetUserform2Data(strTextbox As String)
UserForm2.Show
If UserForm2.TextBox1.Tag = "OK" Then
Me.Controls(strTextbox).Value = UserForm2.TextBox1
Else
'keine Ahnung
End If
Unload UserForm2
End Sub
Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
prcGetUserform2Data "Textbox1"
Cancel = True 'beruhigt die Windows-Sanduhr
End Sub
Private Sub TextBox2_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
prcGetUserform2Data "Textbox2"
Cancel = True 'beruhigt die Windows-Sanduhr
End Sub
'Code im Userform2
Private Sub CommandButton1_Click()
'Schaltfläche zum Übernehmen des Wertes nach Userform1
Me.TextBox1.Tag = "OK"
Me.Hide
End Sub
Private Sub CommandButton2_Click()
'Abbrechen-Schaltfläche
Me.TextBox1.Tag = "Abbrechen"
Me.Hide
End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
'wichtig, da sonst die Userform2-Daten in Userform1 ggf. nicht mehr zur _
Verfügung stehen und ein ein Fehler auftritt
If CloseMode = 0 Then
'Userform darf nicht per Alt+F4 oder das Schließen-X beendet werden!!
Call CommandButton2_Click
End If
End Sub