Hallo zusammen,
ich habe folgenden VBA Code für ein Formular, was in einem HF als UFO eingesetzt wird:
Me.Recordset.FindFirst "adr_id = " & Me!lstSuchergebnis
Me!lstSuchergebnis = Null
Me!txtSuche = Null
Me!txtSuche.SetFocus
Me!lstSuchergebnis.Visible = False
Das Problem hierbei ist nun, das es zwar super in dem eigentlichen Formular funktioniert aber nicht als Unterformular im HF. Ich gehe mal davon aus das "Me" dann auf das HF verweist, was dann natürlich nicht die Felder wie das UFO hat.
Wie würde man hierbei elegant vorgehen?
Das HF heißt "frmPerson"
und das UFO "frmAdresse"
Vielen Dank im Voraus.
OK so würde ich direkt das Unterformular ansprechen:
Forms!frmPerson!frmAdresse.Form.Recordset.FindFirst "adr_id = " & Me!lstSuchergebnis
Forms!frmPerson!frmAdresse!lstSuchergebnis = Null
Forms!frmPerson!frmAdresse!txtSuche = Null
Forms!frmPerson!frmAdresse!txtSuche.SetFocus
Forms!frmPerson!frmAdresse!lstSuchergebnis.Visible = False
Allerdings werden mir trotzdem keine Daten angezeigt.
In der frmAdresse das als Datensatzherkunft die Tabelle tblAdressen nutzt werden mir in den jeweiligen Felder die Daten angezeigt, die ich durch Doppelklick im Listenelement auswähle. Dort klappt alles einwandfrei.
in dem Hauptformular frmPerson, werden mir zwar die Adressen im Listenelement angezeigt, aber wenn ich einen Doppelklick drauf mache, werden nicht die dazugehörigen Felder ausgefüllt. Das Doppelklick-Event sieht man im Code oben.
Ich vermute das noch was mit dem Recordset gemacht werden muss, aber unsicher was genau, da ich ja schon auf das richtige UFO verweise :S
Hallo,
ich frage mich immer noch, warum Du solche verquerten Konstruktionen machen willst.
Bau die Suchfünktion in das Formular ein, dessen Daten gefiltert werden sollen. Das macht (Dir) dann am wenigsten Probleme.
Man sitzt doch auch nicht unterm Dach, wenn etwas im Keller gesucht werden muss, außer es gibt triftige(!) Gründe dafür.
Nochmal die Frage: Warum ein (ungebundenes?) HFo mit eingebauten (gebundenenem Endlos-) UFo, das das Ergebnis anzeigen soll?
Du wirfst einfach die beiden Objekte durcheinander.
Wahrscheinlich so, und ohne weitere Prüfungen und Fehlerbehandlung:
Me!frmAdresse.Form.Recordset.FindFirst "adr_id = " & Me!lstSuchergebnis
Me!lstSuchergebnis = Null
Me!txtSuche = Null
Me!txtSuche.SetFocus
Me!lstSuchergebnis.Visible = False
Hallo,
die Suche habe ich bereits in das HAF eingearbeitet. Eine aktuelle Version der DB ist hier hinterlegt: https://www.access-o-mania.de/forum/index.php?topic=25380.msg150592#msg150592
Die Suchfelder sind ja in den Unterformularen. Ich habe pro Formular wo ein Datensatz gesucht werden muss eine Suchfunktion. Leider funktioniert diese Suchfunktion nicht im Unterformular.