Trabajar con datos adjuntos en DAO
En DAO (objetos de acceso a datos), los campos de datos adjuntos funcionan de la misma manera que los demás campos multivalor. El campo que contiene los datos adjuntos contiene un conjunto de registros secundario del conjunto de registros de la tabla. Hay dos nuevos métodos DAO, LoadFromFile y SaveToFile, que se ocupan exclusivamente de los datos adjuntos.
Adición de datos adjuntos a un registro
El método LoadFromFile carga un archivo desde el disco y agrega el archivo como datos adjuntos al registro especificado. En el siguiente ejemplo de código se muestra la sintaxis del método LoadFromFile.
Recordset.Fields("FileData").LoadFromFile(<filename>)
Nota:
El campo FileData lo reserva internamente el motor de base de datos de Access para almacenar los datos adjuntos binarios.
El siguiente ejemplo de código usa el método LoadFromFile para cargar la fotografía de un empleado desde el disco.
' Instantiate the parent recordset.
Set rsEmployees = db.OpenRecordset("Employees")
… Code to move to desired employee
' Activate edit mode.
rsEmployees.Edit
' Instantiate the child recordset.
Set rsPictures = rsEmployees.Fields("Pictures").Value
' Add a new attachment.
rsPictures.AddNew
rsPictures.Fields("FileData").LoadFromFile "EmpPhoto39392.jpg"
rsPictures.Update
' Update the parent record
rsEmployees.Update
Guardar datos adjuntos en el disco
En el siguiente ejemplo de código se muestra cómo usar el método SaveToFile para guardar todos los datos adjuntos de un empleado determinado en el disco.
' Instantiate the parent recordset.
Set rsEmployees = db.OpenRecordset("Employees")
… Code to move to desired employee
' Instantiate the child recordset.
Set rsPictures = rsEmployees.Fields("Pictures").Value
' Loop through the attachments.
While Not rsPictures.EOF
' Save current attachment to disk in the "My Documents" folder.
rsPictures.Fields("FileData").SaveToFile _
"C:\Documents and Settings\Username\My Documents"
rsPictures.MoveNext
Wend
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