Bearbeiten von mehrwertigen Feldern mit DAO
Mehrwertige Felder werden in DAO als Recordset-Objekte dargestellt. Das Recordset eines Felds ist dem Recordset für die Tabelle untergeordnet, die das mehrwertige Feld enthält. Um das untergeordnete Recordset zu instanziieren, verwenden Sie die Value-Eigenschaft des mehrwertigen Felds wie folgt.
Set childRs = rs.<multi-valued field>.Value
Das folgende Codebeispiel zeigt, wie sie das untergeordnete Recordset des Felds AssignedTo der Tabelle Tasks instanziieren.
Set rs = db.OpenRecordSet("Tasks")
Set childRs = rs.AssignedTo.Value
Das untergeordnete Recordset hat dieselbe Funktionalität wie jedes andere Recordset-DAO-Objekt.
Im folgenden Codebeispiel wird gezeigt, wie ein übergeordnetes Recordset und dessen untergeordnetes Recordset durchlaufen werden. Das Beispiel zeigt die Aufgaben in der Tabelle Tasks zusammen mit den Personen, denen diese Aufgaben zugewiesen wurden, im Direktfenster an.
Sub BrowseMultiValueField()
Dim db As Database
Dim rs As Recordset
Dim childRS As Recordset
Set db = CurrentDb()
' Open a Recordset for the Tasks table.
Set rs = db.OpenRecordset("Tasks")
rs.MoveFirst
Do Until rs.EOF
' Print the name of the task to the Immediate window.
Debug.Print rs!TaskName.Value
' Open a Recordset for the multivalued field.
Set childRS = rs!AssignedTo.Value
' Exit the loop if the multivalued field contains no records.
Do Until childRS.EOF
childRS.MoveFirst
' Loop through the records in the child recordset.
Do Until childRS.EOF
' Print the owner(s) of the task to the Immediate
' window.
Debug.Print Chr(0), childRS!Value.Value
childRS.MoveNext
Loop
Loop
rs.MoveNext
Loop
End Sub
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für