Manipular campos multivalor con DAO
Los campos multivalor están representados como objetos Recordset en DAO. El conjunto de registros para un campo es secundario del conjunto de registros para la tabla que contiene el campo multivalor. Para crear una instancia del conjunto de registros secundario, use la propiedad Value del campo multivalor como se indica a continuación.
Set childRs = rs.<multi-valued field>.Value
En el ejemplo de código siguiente se muestra cómo crear una instancia del conjunto de registros secundario del campo AssignedTo de la tabla Tasks.
Set rs = db.OpenRecordSet("Tasks")
Set childRs = rs.AssignedTo.Value
El conjunto de registros secundario tiene la misma funcionalidad que cualquier objeto Recordset de DAO.
En el ejemplo de código siguiente se muestra cómo recorrer en iteración un conjunto de registros primario y su conjunto de registros secundario. Este ejemplo imprime las tareas de la tabla Tasks (Tareas) junto con las personas asignadas a dichas tareas en la ventana Inmediato.
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
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de