Contenido
Puede adjuntar un archivo a una base de datos de Microsoft Access 2007 mediante Visual Basic. Access 2007 ofrece un nuevo tipo de datos, llamado Anexo, que puede utilizar para almacenar todos los tipos de documentos en su base de datos, como archivos de Word o imágenes digitales. Usted no tiene que preocuparse por el tamaño de la base de datos, ya que Access 2007 comprime los archivos automáticamente. Un solo registro también puede manejar varios datos adjuntos.
instrucciones
Adjuntar archivos a una base de datos de Access mediante Visual Basic (binary digits - computer science image by drx from Fotolia.com)-
Inicie Microsoft Access 2007 y cree una tabla denominada "Tabla 1". Agregar un campo llamado "Archivos" y establecer el "Tipo de datos" como "Anexo". Haga clic en "Herramientas de base de datos" y seleccione "Visual Basic" en el panel "Macro". Cree un archivo de texto en "C: " llamado "adjuntoEsteArchivo.txt".
-
Cree una nueva sub escribiendo "Sub addAttachments ()" y declare las siguientes variables dentro de ella: "Dim db As DAO.Database Dim rst As DAO.Recordset Dim rstChld As DAO.Recordset2 Dim fldAttach As DAO.Field2"
-
Escriba "Set db = CurrentDb Set rst = db.OpenRecordset (" Tabla1 ") rst.AddNew" para agregar un nuevo registro a "Tabla1".
-
Escriba "Set rstChld = rst.Fields (" Anexos ")." Para definir una variable de registro de hija. Escriba "rstChld.AddNew Set fldAttach = rstChld.Fields (" DatosArchivo ")" para agregar un nuevo campo y establecer el campo que almacena los datos binarios
-
Escriba "fldAttach.LoadFromFile" C: adjuntoEsteArchivo.txt "rstChld.Update" para cargar el archivo que se va a adjuntar y actualizar el registro.
-
Escriba "rstChld.Close rst.Update" para cerrar el conjunto de registros y actualizar el primer conjunto de registros. Escriba "rst.Close" para cerrar el conjunto de registros y "End Sub" en la última línea si es necesario.
consejos
- Su sub final debe quedar así:
- "Sub addAttachments ()
- Dim db As DAO.Database
- Dim rst As DAO.Recordset
- Dim rstChld As DAO.Recordset2
- Dim fldAttach As DAO.Field2
- Set db = CurrentDb
- Set rst = db.OpenRecordset ("Tabla1")
- rst.AddNew
- Set rstChld = rst.Fields ("Anexos").
- rstChld.AddNew
- Set fldAttach = rstChld.Fields ("DatosArchivo")
- fldAttach.LoadFromFile "C: adjuntoEsteArchivo.txt"
- rstChld.Update
- rstChld.Close
- rst.Update
- rst.Close
- End Sub "