Beitrag aus SmartTools Access Weekly
VBA-Zugriff auf Datensätze im Unterformular
Access 365 2024 2021 2019 2016 2013 2010
FRAGE Ich nutze ein Formular mit einem Unterformular und möchte nun per VBA die Datensätze aus beiden Formularen kopieren. Das funktioniert auch, aber es kann natürlich vorkommen, dass das Unterformular mehr als einen Datensatz hat. Ich suche nun nach einer Möglichkeit, das Unterformular programmatisch anzusprechen und es den nächsten Datensatz positionieren. Am sinnvollsten würde ich in einer Schleife immer aller Datensätze nacheinander durchlaufen. Wie muss ich dazu vorgehen?
Diverse Anfragen
ANTWORT Am einfachsten verwenden Sie ein Recordset, um auf die Datensätze des Unterformulars zuzugreifen:
Dim rsUFO As DAO.Recordset
Set rsUFO = Me.UFoName.Form.RecordsetClone
"UFoName" ersetzen Sie durch den Namen des Unterformular-Steuerelementes in Ihrem Hauptformular. Obige Anweisung initialisiert einen Recordset "rsUFO", der alle Datensätze des Unterformulars umfasst. Diese Datensätze können Sie nun wie folgt in einer Schleife verarbeiten:
While Not rsUFO.EOF
'Verarbeitung...
rsUFO.MoveNext
Wend
rsUFO.Close
Set rsUFO = Nothing