Access 2007
Ich habe 2 voneinander unabhängige Formulare "EingabeAdressen" und "Projekte". Im Formular "Projekte" habe ich ein Kombinationslistenfeld "Adressat" mit der Datensatzherkunft SELECT [Name], [Kennummer] FROM [AdressenNachname] ORDER BY [Name]. Angezeigt wird in dem Feld "Adressat" der "Name", aber in der zugrundeliegenden Tabelle abgespeichert die "Kennummer", weil sie eindeutig ist.
Nun möchte ich, wenn ich auf "Adressat" im Formular "Projekte" klicke und es nicht Null ist, dass das Formular "EingabeAdressen" geöffnet wird und der Datensatz angezeigt wird, der die gleiche Kennummer hat.
Mit folgendem Code komme ich nicht weiter. Gehr so eine Aktion nicht mit einem Kombinationslistenfeld?
Private Sub Adressat_Click()
Dim rs As DAO.Recordset
If Not fctIsFormOpen("EingabeAdressen") Then DoCmd.OpenForm "EingabeAdressen"
Set rs = Forms![EingabeAdressen].RecordsetClone
If Me!Adressat<> 0 Then
'im RecordsetClone von Formular2 die Id aus dem aktuellen Formular finden
rs.FindFirst "Kennummer = " & Me!Adressat
If Not rs.NoMatch And Me!Adressat<> 0 Then
'Anzeige im Formular2 mit dessen RecordsetClone synchronisieren
Forms![EingabeAdressen].Bookmark = rs.Bookmark
End If
End If
Set rs = Nothing
End Sub
Hallo,
Private Sub Adressat_Click()
If len(nz(Me!Adressat.Column(1),"")) > 0 and Me!Adressat.Column(1) <> 0 Then
DoCmd.OpenForm "EingabeAdressen",,,"Kennummer = " & Me!Adressat.Column(1)
End If
End Sub
Vielen Dank! Funktioniert einwandfrei!