Fecha de Un Archivo

Solo consultas sobre macros y código VBA Excel.

Reglas del Foro
1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!
Compartir en:
     

Fecha de Un Archivo

Notapor zato » 06 Sep 2006 13:57

Buen dí­a.

Resulta que trabajo mucho con SAP, el cual baja archivos planos que se pueden manejar con Excel.

Lo que pasa es que a diario en mi trabajo bajo varios archivos de SAP, luego una macro los toma y los organiza segun necesito con varias tablas dinamicas y otras cosas.

En varias oportunidades se me ha olvidado bajar algun archivo de SAP y los informes quedan mal.

La pregunta es como se puede saber la fecha de creación de un archivo que esta en una ubicación determinada (path) y compararla con la fecha de hoy. Así­ yo harí­a una macro que me verifique si la fecha de creación de los archivos es de hoy y de no ser así­ me listará los que no son de hoy.

Muchas gracias por su colaboración.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
zato
Miembro Frecuente
Miembro Frecuente
 
Registrado: 25 Nov 2005 19:02

Re: Fecha de Un Archivo

Notapor Adrian » 06 Sep 2006 14:19

Esto puede inducir a una solución.
Sub ShowFileInfo(filespec)
Dim fs, f, s
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFile(filespec)
s = f.DateCreated
MsgBox s
End Sub
Sub Archivo()
Call ShowFileInfo("uno.xls")
End Sub
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
Adrian
Moderator
Moderator
 
Registrado: 13 Jun 2004 17:24
Ubicación: Chamical La Rioja ARG

Re: Fecha de Un Archivo

Notapor p@li » 06 Sep 2006 15:06

Complementando lo que expuso Adrian.

Private Function ShowInfoAllFiles(ByVal dirCarpeta As String) As String

Dim Fecha As Date
Dim Archivo As Object
Dim Carpeta As Object
Dim FSO As Object
Set FSO = CreateObject("Scripting.FileSystemObject")

Set Carpeta = FSO.GetFolder(dirCarpeta)

On Error Resume Next
For Each Archivo In Carpeta.Files
Err.Clear
Fecha = Archivo.DateCreated
If Err = 0 Then
If Date <= Fecha Then
ShowInfoAllFiles = ShowInfoAllFiles & vbCrLf & "NUEVO: " & " || " & Archivo.Name & " || " & Fecha
Else
ShowInfoAllFiles = ShowInfoAllFiles & vbCrLf & "VIEJO: " & " || " & Archivo.Name & " || " & Fecha
End If
Else
ShowInfoAllFiles = ShowInfoAllFiles & vbCrLf & "FECHA INCIERTA: " & " || " & Archivo.Name & " || "
End If
Next

Set Archivo = Nothing
Set Carpeta = Nothing
Set FSO = Nothing
End Function


Private Sub Command1_Click()
'para llamar la función
MsgBox ShowInfoAllFiles("C:\")
End Sub

Saludos
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
p@li
Miembro Frecuente
Miembro Frecuente
 
Registrado: 04 Oct 2005 16:55
Ubicación: Argentina

Re: Fecha de Un Archivo

Notapor zato » 06 Sep 2006 16:41

Muchas, pero muchas gracias.....

Definitavente son unos sabios del tema.


Lo unico fue que yo sobreescribo los archivos viejos así­ que DateCreated no me funcionó busqué en la ayuda de Visual Basic y encontre que la función que necesito es DateLastModified.

Nuevamente muchas gracias, sin su ayuda estarí­a estancado.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
zato
Miembro Frecuente
Miembro Frecuente
 
Registrado: 25 Nov 2005 19:02


Compartir en:
     

  • Anuncio
Manual Excel avanzado

Volver a Macros

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados