relacionar nombre fichero y autor

15/05/2009 - 18:15 por santam | Informe spam
Diaramente me envian ficheros en Excel 2003, que quedan depositados en una
carpeta. Quisiera poder hacer una relación de los ficheros recibdos, la fecha
de creación y el autor del fichero (imprescindible), sin tener que abrir los
ficheros. ¿Alguien puede ayudarme? Grácias.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
16/05/2009 - 01:54 | Informe spam
hola (...) ?????

Diaramente me envian ficheros en Excel 2003, que quedan depositados en una carpeta.
Quisiera poder hacer una relacion de los ficheros recibdos, la fecha de creacion y el autor del fichero (imprescindible)
sin tener que abrir los ficheros...



ten lista una hoja en blanco y escribe la ruta donde se almacenan esos archivos en la celda [A1]

copia el siguiente procedimiento en un modulo de codigo estandar y...
si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

Sub ArchivosRecibidos()
Dim Ruta As String, Fila As Integer, _
Entorno As Object, Carpeta As Object, Archivo As Object
Application.ScreenUpdating = False
Ruta = Range("a1")
Cells.Clear
Fila = 2
Range("a2:c2").Value = Array("Nombre", "Fecha Creacion", "Autor")
Set Entorno = CreateObject("shell.application")
Set Carpeta = Entorno.Namespace(CStr(Ruta))
For Each Archivo In Carpeta.Items
If Not Archivo.IsFolder Then
Fila = Fila + 1
Range("a" & Fila).Resize(, 3).Value = Array( _
Carpeta.GetDetailsOf(Archivo, 0), _
Carpeta.GetDetailsOf(Archivo, 4), _
Carpeta.GetDetailsOf(Archivo, 9))
End If
Next
Set Carpeta = Nothing
Set Entorno = Nothing
Range("a1:c1").EntireColumn.AutoFit
Range("a1") = Ruta
End Sub
Respuesta Responder a este mensaje
#2 santam
18/05/2009 - 17:17 | Informe spam
"Héctor Miguel" escribió:

hola (...) ?????

> Diaramente me envian ficheros en Excel 2003, que quedan depositados en una carpeta.
> Quisiera poder hacer una relacion de los ficheros recibdos, la fecha de creacion y el autor del fichero (imprescindible)
> sin tener que abrir los ficheros...

ten lista una hoja en blanco y escribe la ruta donde se almacenan esos archivos en la celda [A1]

copia el siguiente procedimiento en un modulo de codigo estandar y...
si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

Sub ArchivosRecibidos()
Dim Ruta As String, Fila As Integer, _
Entorno As Object, Carpeta As Object, Archivo As Object
Application.ScreenUpdating = False
Ruta = Range("a1")
Cells.Clear
Fila = 2
Range("a2:c2").Value = Array("Nombre", "Fecha Creacion", "Autor")
Set Entorno = CreateObject("shell.application")
Set Carpeta = Entorno.Namespace(CStr(Ruta))
For Each Archivo In Carpeta.Items
If Not Archivo.IsFolder Then
Fila = Fila + 1
Range("a" & Fila).Resize(, 3).Value = Array( _
Carpeta.GetDetailsOf(Archivo, 0), _
Carpeta.GetDetailsOf(Archivo, 4), _
Carpeta.GetDetailsOf(Archivo, 9))
End If
Next
Set Carpeta = Nothing
Set Entorno = Nothing
Range("a1:c1").EntireColumn.AutoFit
Range("a1") = Ruta
End Sub




El programa funciona a la perfección, es justo lo que necesitva, però
abusando de la amabilidad ¿ seria posible detallar las carpetas y subcarpetas
donde estan guardados todos los ficheros ?.
Muchas gracias.
Respuesta Responder a este mensaje
#3 Héctor Miguel
18/05/2009 - 18:34 | Informe spam
hola (...) ?????

El programa funciona a la perfeccion, es justo lo que necesitva, pero ...
... seria posible detallar las carpetas y subcarpetas donde estan guardados todos los ficheros ?



- "la carpeta" ES la que pones en la celda [A1] (y ahi permanece luego de ejecutar la macro)
- el codigo propuesto NO "baja" a las sub-carpetas
- no se si requieras algo distinto de tu mensaje original (?)

comentas (si hubiera) algun detalle en el tintero ?
saludos,
hector.

__ previos __
Diaramente me envian ficheros en Excel 2003, que quedan depositados en una carpeta.
Quisiera poder hacer una relacion de los ficheros recibdos, la fecha de creacion y el autor del fichero (imprescindible)
sin tener que abrir los ficheros...



ten lista una hoja en blanco y escribe la ruta donde se almacenan esos archivos en la celda [A1]

copia el siguiente procedimiento en un modulo de codigo estandar y...
si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

Sub ArchivosRecibidos()
Dim Ruta As String, Fila As Integer, _
Entorno As Object, Carpeta As Object, Archivo As Object
Application.ScreenUpdating = False
Ruta = Range("a1")
Cells.Clear
Fila = 2
Range("a2:c2").Value = Array("Nombre", "Fecha Creacion", "Autor")
Set Entorno = CreateObject("shell.application")
Set Carpeta = Entorno.Namespace(CStr(Ruta))
For Each Archivo In Carpeta.Items
If Not Archivo.IsFolder Then
Fila = Fila + 1
Range("a" & Fila).Resize(, 3).Value = Array( _
Carpeta.GetDetailsOf(Archivo, 0), _
Carpeta.GetDetailsOf(Archivo, 4), _
Carpeta.GetDetailsOf(Archivo, 9))
End If
Next
Set Carpeta = Nothing
Set Entorno = Nothing
Range("a1:c1").EntireColumn.AutoFit
Range("a1") = Ruta
End Sub
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida