Access - Base de datos de archivos

 
Vista:

Base de datos de archivos

Publicado por Arturo (2 intervenciones) el 25/02/2004 22:03:44
Quiero hacer una base de datos en access que administre archivos que se graban en ub directorio "X" y sus subdirectorios, en la cual se actualice automaticamente los nombres de archivos y su ubicacion...si es posible, por favor ayudenme... Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Base de datos de archivos

Publicado por Alejandro (4142 intervenciones) el 04/05/2023 21:46:32
Sí, Arturo, es posible crear una base de datos en Access para administrar archivos que se graban en un directorio y sus subdirectorios. Puedes hacerlo mediante el uso de macros y código VBA.

Aquí te presento un ejemplo de cómo podrías hacerlo:

1. Crea una tabla en Access para almacenar la información de los archivos, incluyendo el nombre del archivo, la ubicación, la fecha de creación, la fecha de modificación, etc.

2. Crea un formulario en Access con los campos necesarios para la tabla de archivos.

3. Crea una macro que se active al hacer clic en un botón del formulario. Esta macro debe realizar una búsqueda en el directorio y sus subdirectorios para encontrar los archivos y actualizar la información en la tabla.

4. Usa código VBA en la macro para buscar los archivos en el directorio y sus subdirectorios. Puedes hacer esto mediante la función Dir de VBA y un bucle For Each que recorra los subdirectorios. Por ejemplo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Sub BuscarArchivos()
    Dim Directorio As String
    Dim NombreArchivo As String
    Dim FechaCreacion As Date
    Dim FechaModificacion As Date
 
    Directorio = "C:\Directorio\"
    NombreArchivo = Dir(Directorio & "*.*", vbDirectory)
    Do While NombreArchivo <> ""
        If NombreArchivo <> "." And NombreArchivo <> ".." Then
            If (GetAttr(Directorio & NombreArchivo) And vbDirectory) = vbDirectory Then
                ' Es un subdirectorio, llamar a la función de forma recursiva
                BuscarArchivos Directorio & NombreArchivo & "\"
            Else
                ' Es un archivo, agregar información a la tabla
                FechaCreacion = FileDateTime(Directorio & NombreArchivo)
                FechaModificacion = FileDateTime(Directorio & NombreArchivo)
                ' Agregar información a la tabla de archivos
                DoCmd.RunSQL "INSERT INTO TablaArchivos (NombreArchivo, Ubicacion, FechaCreacion, FechaModificacion) VALUES ('" & NombreArchivo & "', '" & Directorio & "', #" & FechaCreacion & "#, #" & FechaModificacion & "#);"
            End If
        End If
        NombreArchivo = Dir()
    Loop
End Sub

5. Asigna esta macro al botón del formulario y, al hacer clic en él, se actualizará la información en la tabla de archivos.

Espero que esta información te sea útil para crear la base de datos que necesitas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar