Supportnet / Forum / Datenbanken
Access-Formular erstellen VBA
Frage
Hallo,
was mache ich falsch? Wenn ich ein Formular mit folgendem Code erstelle, werden alle Variablen geleert. Wird das Formular ohne Quellcode erstellt, behalten die Variablen ihren Wert. Beim ersten Durchlauf wird der Wert der Variable angezeigt, bei zweitem bleibt die MsgBox leer.
Code im Module1[code]Public TempVariable As String[/code]
Code im Formular mit Schaltfläche "Befehl0"
[code]Option Compare Database
Private Sub Form_Load()
TempVariable = "Test"
End Sub
Private Sub Befehl0_Click()
Dim tmpFormname As String
Dim frm As Access.Form
Set frm = Application.CreateForm
frm.PopUp = 1
frm.NavigationButtons = False
frm.RecordSelectors = False
frm.CloseButton = False
frm.MinMaxButtons = 0
frm.ScrollBars = 0
frm.Caption = "MeinFormular"
tmpFormname = frm.Name
'Schaltfläche Abbrechen
Set cmdAbbrechen = CreateControl(frm.Name, acCommandButton, , "", "", 6500, 750, 1750, 1000)
cmdAbbrechen.Caption = "Abbrechen"
cmdAbbrechen.OnClick = "[Ereignisprozedur]"
LoadModule frm, tmpFormname
DoCmd.RunCommand acCmdFormView
MsgBox TempVariable
End Sub
Private Sub LoadModule(frm As Access.Form, tmpFormname As String)
Dim mdl As Access.Module
Dim Code As String
Code = Code & "Private Sub Befehl0_Click()" & vbCrLf
Code = Code & "DoCmd.Close acForm, """ & tmpFormname & """, acSaveNo" & vbCrLf
Code = Code & "End Sub"
Set mdl = frm.Module
mdl.InsertText Code
End Sub[/code]
Danke für Eure Hilfe im Voraus
Antwort 1 von Marie
ja, echt komisch :-((
Gruß Marie
Gruß Marie