Quantcast
Channel: Microsoft Access Forum
Viewing all articles
Browse latest Browse all 880

Problem: Anwählen eines Datensatzes nach Listbox funktioniert nicht immer

$
0
0

Ich benutze eine etwas exotische Variante ein Formular mit ausgewählten Datensätzen zu öffnen:

Dem Formular wird per Pointer ein AdodB.Recordset  in OpenArgs übergeben. 

Das Recordset wird so befüllt:

With rs    .ActiveConnection = conn    .CursorType = adOpenDynamic        .CursorLocation = adUseServer   End With      'Jetzt die Abfrage ausführen   Set rs = cmd.Execute

Das Formular wird als Dialog geöffnet mit diesem Code:

'Mehr als 1 Patient gefunden --->> Formular öffnen  mit den gefundenen Patienten
    DoCmd.OpenForm "Eingabe von Patientendaten", acNormal, , , acFormEdit, acDialog, CVar(GetPointerToObject(rs))

Das funktioniert prima so.

Im Open-Ereignis des geöffneten Formulars wird das Recordset des Formulars anhand der OpenArgs gesetzt.

Obendrein wird das Recordset einer Listbox ebenfalls mit den OperArgs besetzt.

Die Listbox zeigt also dieselben Datensätze wie das Formluar selber.

Jetzt geht es darum, nach einem Klick auf einen Eintrag der Listbox den entsprechenden Datensatz zum atuellen DS des Formulars zu machen.

Das funktioniert leider nicht so ganz:

MIt diesem Code Me.Recordset.Find ("[ID_proband]=" & Me.lstProbandListe.Column(1))

wird manchmal 2x, manchmal 4mal der richtige DS angwählt, dann hört es aber auf.

Wie kommt das ? Ich habe zwar vage Angaben gefunden, daß das manchmal nicht fnktioniert, aber nicht wrum und auch nicht wie ich das vermeiden kann


Viewing all articles
Browse latest Browse all 880


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>