What is the difference between the general create date and the statistics create date?

Posted on 2011-02-17
Last Modified: 2012-05-11
I use a template to create an Excel workbook that has been in use a long time.
I want to use brettd code to insert the creation date, however the files seem to have two creation dates.
1. Under the General tab of the workbook there is the date that the file was created from the template.
2. Under Statistics tab of the workbook there is the date that the template was created

ActiveWorkbook.BuiltinDocumentProperties("Creation Date") .....seems to return the "Statistics" create date
I would like to return "General"  create date

Is that possible??
Question by:spar-kle
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 4

Expert Comment

ID: 34922012
From within any module in the Visual Basic Editor, choose from the main menu Tools, References and make sure that "Microsoft Scripting Runtime" is checked. Then create this function:

Function getFileDate(strFileName As String) As Date
   Dim fso As Scripting.FileSystemObject
   Dim file As Scripting.file
   Set fso = New FileSystemObject
   Set file = fso.GetFile(strFileName)
   getFileDate = file.DateCreated
End Function

Then, within your code, you can use for instance:


to get the Date Created for that file.


Author Comment

ID: 34922072
Thanks for your answer Al
However, I'm not quite sure how I can use this in conjunction with brettdj code
...please advise
LVL 50

Expert Comment

by:Dave Brett
ID: 34922105

That is interesting

In Excel 2010 the creation date of a file from a template is the original date, and The CreationDate does return this on my test

Are you running Excel 2003?

The code below returns the template creation date (2006) with ActiveWorkbook.BuiltinDocumentProperties("Creation Date"), then the actual file creation date (today)using the filesystemobject on my testing of a new file created from a template


MsgBox ActiveWorkbook.BuiltinDocumentProperties("Creation Date")
    Set objfso = CreateObject("scripting.filesystemobject")
    Set objfil = objfso.GetFile(ActiveWorkbook.FullName)
    MsgBox objfil.DateCreated

Open in new window

Salesforce Made Easy to Use

On-screen guidance at the moment of need enables you & your employees to focus on the core, you can now boost your adoption rates swiftly and simply with one easy tool.

LVL 50

Expert Comment

by:Dave Brett
ID: 34922109
> However, I'm not quite sure how I can use this in conjunction with brettdj code
I don't think it gives you what you need - it will give you the file creation date not the template date

Author Comment

ID: 34922154
Thanks Dave
This file is in Excel 2007 format.
The MsgBox code returns template creation date, then actual date

Author Comment

ID: 34922174
sorry I should have said thta it is in 2003 format.
I was looking at it in 2007 at home.
It was in 2003 format at work..
LVL 50

Accepted Solution

Dave Brett earned 500 total points
ID: 34922276
Doesn't this then do what you want already?

It you wanted actual date rather than template creation then pls try this



Sub Change()
    Dim objFso
    Dim objFil
    Dim Wb As Workbook
    Dim strFName As String
    Dim strFolderName As String
    strFolderName = "c:\temp"
    Set objFso = CreateObject("scripting.filesystemobject")

    With Application
        .ScreenUpdating = False
        .DisplayAlerts = False
    End With

    strFName = Dir(strFolderName & "\*.xls*")
    Do While Len(strFName) > 0
        Set Wb = Workbooks.Open(strFolderName & "\" & strFName)
        Set objFil = objFso.GetFile(ActiveWorkbook.FullName)
        With Wb.Sheets(1).[a1]
            .NumberFormat = "dd-mmm-yyyy"
            .Value = objFil.DateCreated
        End With
        strFName = Dir

    With Application
        .ScreenUpdating = True
        .DisplayAlerts = True
        .StatusBar = vbNullString
    End With

End Sub

Open in new window


Author Comment

ID: 34922282
Can you please advise how I could use the filesystemobject in the original code please?

Author Closing Comment

ID: 34922344
Thanks for your help,
That's perfect
LVL 50

Expert Comment

by:Dave Brett
ID: 34922347
See post above that overalpped yours :)

Featured Post

[Webinar] Learn How Hackers Steal Your Credentials

Do You Know How Hackers Steal Your Credentials? Join us and Skyport Systems to learn how hackers steal your credentials and why Active Directory must be secure to stop them. Thursday, July 13, 2017 10:00 A.M. PDT

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Some code to ensure data integrity when using macros within Excel. Also included code that helps secure your data within an Excel workbook.
Access developers frequently have requirements to interact with Excel (import from or output to) in their applications.  You might be able to accomplish this with the TransferSpreadsheet and OutputTo methods, but in this series of articles I will di…
The viewer will learn how to use a discrete random variable to simulate the return on an investment over a period of years, create a Monte Carlo simulation using the discrete random variable, and create a graph to represent the possible returns over…
This Micro Tutorial demonstrate the bugs in Microsoft Excel for Mac with Pivot Charts.

634 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question