ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Evaluate File for Last Updated Date (https://www.excelbanter.com/excel-programming/436350-evaluate-file-last-updated-date.html)

jb_tenor1

Evaluate File for Last Updated Date
 
I want to have my macro code determine the date a file was last updated and
then from there, decide whether or not to open it. What I don't know is how
to access the file's property that returns that date it was updated. If I
could just use an "If" statement to say something like this, in principle:

If Filename.DateUpdated = Today() - 1 Then
Workbooks.Open Filename
End If

The goal is to only open files that have been updated within the last two
days. Is this possible?

Gord Dibben

Evaluate File for Last Updated Date
 
Using document properties.

IF Filename.BuiltinDocumentProperties("Last Save Time") etc.


Gord Dibben MS Excel MVP

On Wed, 18 Nov 2009 13:54:05 -0800, jb_tenor1
wrote:

I want to have my macro code determine the date a file was last updated and
then from there, decide whether or not to open it. What I don't know is how
to access the file's property that returns that date it was updated. If I
could just use an "If" statement to say something like this, in principle:

If Filename.DateUpdated = Today() - 1 Then
Workbooks.Open Filename
End If

The goal is to only open files that have been updated within the last two
days. Is this possible?



Barb Reinhardt

Evaluate File for Last Updated Date
 
This should get you started

Option Explicit

Sub Test()
Dim FSO As Object
Dim RootFolder As Object
Dim myFolder As String
Dim File As Object

'define myFolder here

myFolder = "C:" 'Enter what you want
'Create FileSystemObject object
Set FSO = CreateObject("Scripting.FileSystemObject")

'Test if the folder exist and set RootFolder
If FSO.FolderExists(myFolder) = False Then
MsgBox myFolder & " doesn't exist"
Exit Sub
End If
Set RootFolder = FSO.GetFolder(myFolder)

For Each File In RootFolder.Files
Debug.Print File.Name, File.datelastmodified, File.datelastaccessed

Next File

Set FSO = Nothing

End Sub

IIRC, the BuiltInDocumentProperties can only be accessed once the file is
opened.

--
HTH,

Barb Reinhardt



"jb_tenor1" wrote:

I want to have my macro code determine the date a file was last updated and
then from there, decide whether or not to open it. What I don't know is how
to access the file's property that returns that date it was updated. If I
could just use an "If" statement to say something like this, in principle:

If Filename.DateUpdated = Today() - 1 Then
Workbooks.Open Filename
End If

The goal is to only open files that have been updated within the last two
days. Is this possible?



All times are GMT +1. The time now is 11:02 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com