Crear tabla en Access 2007 con ruta ficheros jpg en carpeta y subcarpetas
Publicado por J T (12 intervenciones) el 06/09/2023 20:27:55
Hola.
Tengo un directorio (C:\Borrar) del que cuelgan varios subdirectorios cada uno con unos cuantos archivos, algunos .jpg y otros de otras extensiones. Utilizando Access 2007 quiero que apretando un botón de un formulario, se genere en la tabla Lista_Fotos un registro en el que en el campo RUTA guarde la ruta completa de cada uno de los archivos .jpg existentes en el directorio y en todos los subdirectorios.
Para ello tengo este código pero tengo el problema de que solo me guarda en la tabla la ruta de los archivos .jpg existente en el directorio c:\Borrar, pero no los que hay en los subdirectorios existentes.
A ver si por favor me podeis decir cómo puedo modificarlo para que lo haga.
Gracias.
Private Sub Command0_Click()
Dim strPath As String
Dim strFile As String
Dim strSQL As String
Dim db As DAO.Database
Dim rs As DAO.Recordset
strPath = "C:\Borrar\" 'Ruta del directorio que contiene las imágenes
strFile = Dir(strPath & "*.jpg", vbNormal)
Set db = CurrentDb()
Set rs = db.OpenRecordset("Fotos_Lista", dbOpenTable)
Do While strFile <> ""
strSQL = "INSERT INTO Fotos_Lista (Ruta) VALUES ('" & strPath & strFile & "')"
rs.AddNew
rs!Ruta = strPath & strFile
rs.Update
strFile = Dir()
Loop
rs.Close
Set rs = Nothing
db.Close
Set db = Nothing
End Sub
Tengo un directorio (C:\Borrar) del que cuelgan varios subdirectorios cada uno con unos cuantos archivos, algunos .jpg y otros de otras extensiones. Utilizando Access 2007 quiero que apretando un botón de un formulario, se genere en la tabla Lista_Fotos un registro en el que en el campo RUTA guarde la ruta completa de cada uno de los archivos .jpg existentes en el directorio y en todos los subdirectorios.
Para ello tengo este código pero tengo el problema de que solo me guarda en la tabla la ruta de los archivos .jpg existente en el directorio c:\Borrar, pero no los que hay en los subdirectorios existentes.
A ver si por favor me podeis decir cómo puedo modificarlo para que lo haga.
Gracias.
Private Sub Command0_Click()
Dim strPath As String
Dim strFile As String
Dim strSQL As String
Dim db As DAO.Database
Dim rs As DAO.Recordset
strPath = "C:\Borrar\" 'Ruta del directorio que contiene las imágenes
strFile = Dir(strPath & "*.jpg", vbNormal)
Set db = CurrentDb()
Set rs = db.OpenRecordset("Fotos_Lista", dbOpenTable)
Do While strFile <> ""
strSQL = "INSERT INTO Fotos_Lista (Ruta) VALUES ('" & strPath & strFile & "')"
rs.AddNew
rs!Ruta = strPath & strFile
rs.Update
strFile = Dir()
Loop
rs.Close
Set rs = Nothing
db.Close
Set db = Nothing
End Sub
Valora esta pregunta
0