| Hallo und guten Tag,
folgende kleine Herausforderung:
Ich habe ein Hauptformular, die Tabelle dahinter beinhaltet ca. 1000 Datensätze.
Ein Steuerelement im Hauptformular ist die Mitarbeiternummer.
Weiterhin ist ein Button integriert der bei Klick ein 2. Formular öffnet und das Hauptformular schließt.
Code:
Private Sub btn_weitereDaten_Click()
DoCmd.OpenForm "2. Formular", acNormal, , "[mitarbeiternummer]= [Forms]![Hauptformular]![mitarbeiternummer]", acFormEdit, acWindowNormal
DoCmd.Close acForm, "hauptformular" acSavePrompt
End Sub
In das 2. Formular kann man weitere Daten erfassen die in einer separaten Tabelle gespeichert werden.
Wenn in dieses Formular etwas erfasst wird, wird auch die Mitarbeiternummer in die dahinterstehende Tabelle übertragen.
In diesem 2. Formular ist ebenfalls ein Button integirert der bei Klick eine Abfrage ausführt, das Hauptformular wieder öffnet und das 2. Formular schließt.
Code:
Private Sub btn_PelSchließen_Click()
Dim str_sql_befr As String
On Error GoTo Fehler
str_sql_befr = ...
DoCmd.RunSQL str_sql_befr
DoCmd.OpenForm "Hauptformular", , acNormal, , acFormEdit, acWindowNormal
DoCmd.Close acForm, "2. Formular", acSavePrompt
End Sub
Das funktioniert problemlos.
Beim Öffnen des Hauptformular soll aber der Datensatz mit der Mitarbeiternummer aufgerufen werden, welcher im 2. Formular - bevor es geschlossen wird - gerade aktiv ist.
Wenn ich dafür anstelle
DoCmd.OpenForm "Hauptformular", , acNormal, , acFormEdit, acWindowNormal
das Ereignis hinterlege:
DoCmd.OpenForm "Hauptformular", acNormal, , "[mitarbeiternummer]= [Forms]![2. Formular]![mitarbeiternummer]", acFormEdit, acWindowNormal
dann funktioniert dass auch problemlos, aber es es erscheint nur dieser eine Datensatz im Hauptformular.
Ich möchte aber alle ca. 1000 Datensätze in das Hauptformular laden und trotzdem diesen einen Datensatz anspringen.
Bin gespannt auf Eure Vorschläge. Ich habe alles an Infos umgepflügt die ich gefunden habe - habe aber noch keine Lösung gefunden.
Vielen Dank vorab!
Grüße Jaro
|