Bestimmten Datensatz anspringen beim Öffnen eines Formulars
Karl Donaubauer
Gesendet: 02.08.11 14:49
Betreff: RE: Bestimmten Datensatz anspringen beim Öffnen eines Formulars



Elite Veteran

Beiträge: 716
500100100
Ort: Wien
Hallo, Jacqueline!
Jaro - 02.08.11
...
DoCmd.OpenForm "Hauptformular", , acNormal, , acFormEdit, acWindowNormal
DoCmd.Close acForm, "2. Formular", acSavePrompt
...
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.

Die klassische Lösung dafür steht in http://www.donkarl.com?FAQ4.3.
Ich muss den Artikel endlich mal aktualisieren, denn ab A00 kann man das viel kürzer schreiben. In deinem Fall:

DoCmd.OpenForm "Hauptformular"
Forms!Hauptformular.Recordset.FindFirst "mitarbeiternummer=" & Me!mitarbeiternummer
DoCmd.Close acForm, Me.Name

Falls "mitarbeiternummer" in der Tabelle kein Zahl- sondern Textfeld ist, brauchst du Fliegendreck drumherum:
Forms!Hauptformular.Recordset.FindFirst "mitarbeiternummer='" & Me!mitarbeiternummer & "'"

Übrigens solltest du den Namen "2. Formular" unbedingt auf einen sprechenderen Namen (was tut das Formular) ohne Sonderzeichen (v.a. ohne den Punkt und das Leerzeichen) ändern. s.a. http://www.donkarl.com?FAQ1.5

-----
Servus
Karl
*********
Internationale Access-Konferenz: http://www.AccessDevCon.com
Access-Entwickler-Konferenz: http://www.donkarl.com/?aek
Top of the page Bottom of the page