Hallo zusammen,
ich habe folgendes Problem. Im Rahmen des Importes von Werten aus einem Excelarbeitsblatt soll zu Prüfzwecken der importierte Wert in einem Formular angezeigt und geändert werden. Dazu soll der laufende Code unterbrochen und nach Eingabe der berichtigten Werte fortgesetzt werden. Das Formular hat 4 Felder zwei Textfelder und zwei Kombofelder.
Der Aufruf des Formulares und die Eingabe der berichtigten Werte erfolgt tadellos. Nur die importierten Werte werden nicht angezeigt.
Im Form habe ich einen Button der die Eingabe bestätigt und das Fenster zunächst nur ausblendet. Später im Code wird es dann geschlossen, da bei einem Schließen ansonsten vom Code die neuen Daten nicht übernommen werden.
Me.Visible = False
Hat jeman einen Tip wie ich die Werte anzeigen lassen kann?
Hier der Teilcode:
Imp_Quelle = .Cells(6, 4) ' Zuweisung aus Exceltabelle
Imp_Ziel = .Cells(8, 4) ' Zuweisung aus Exceltabelle
' Formular öffnen und Code anhalten
DoCmd.OpenForm "Import_SST_Anwend_erfassen", , , , , acDialog
' Zuweisung Importwerte an Formular
Forms!Import_SST_Anwend_erfassen.Imp_Quelle = Imp_Quelle
Forms!Import_SST_Anwend_erfassen.Imp_Ziel = Imp_Ziel
'Weitergabe der neuen Werte zur weiteren Verarbeitung
kf_ID_Quelle = Forms!Import_SST_Anwend_erfassen.kf_ID_Quelle
kf_ID_Ziel = Forms!Import_SST_Anwend_erfassen.kf_ID_Ziel
'Schließen des unsichtbaren Fensters
DoCmd.Close acForm, "Import_SST_Anwend_erfassen"
Hallo,
für die Übergabe der Daten an das dialog-geöffnete Formular kann der Openargs-Parameter bei der Openform-Methode herangezogen werden...
Siehe VBA-Hilfe für weitere Erklärungen.
Danke für den Hinweis. Kannst du mir BITTE einen Tip für die Anpassung des Codes geben. Ich verstehe die Beschreibungen nämlich meist nicht. Wäre echt nett.
Danke im Voraus.
Michael
Hallo,
was verstehst Du genau nicht? Hast Du es schon versucht?
Zitat.
.
.
DoCmd.OpenForm "Import_SST_Anwend_erfassen", , , , , acDialog, Me!Imp_Quelle & "|" & Me!Imp_Ziel
' Zuweisung Importwerte an Formular
Forms!Import_SST_Anwend_erfassen.Imp_Quelle = Imp_Quelle
Forms!Import_SST_Anwend_erfassen.Imp_Ziel = Imp_Ziel
.
.
.
und im Form "Import_SST_Anwend_erfassen":
Sub Form_Load()
If not Isnull (Me.Openargs) Then
Me!Imp_Quelle = Split(Me.Openargs,"|")(0)
Me!Imp_Ziel = Split(Me.Openargs,"|")(1)
End If
End Sub