VBA如何打开一个excel文件并告诉它的创builddate

我试图从某处打开一个文件,并获得创build打开的文件的date。 但是,下面的行给我一个错误“运行时错误,自动化错误和未指定的错误”。 我怎样才能解决这个问题? 谢谢。

MsgBox wb2.BuiltinDocumentProperties(“创builddate”)

Private Sub CommandButton1_Click() Dim wb1 As Workbook, wb2 As Workbook Dim Ret1, Ret2 Dim WS As Worksheet Set wb1 = ActiveWorkbook 'Clear Summary tab wb1.Worksheets("Summary").Cells.Clear 'Delete existing worksheet with name "Task List Data Export" For Each WS In Worksheets If WS.Name = "Task List Data Export" Then Application.DisplayAlerts = False Sheets("Task List Data Export").Delete Application.DisplayAlerts = True End End If Next 'Get the File Ret1 = Application.GetOpenFilename("Excel Files (*.xls*), *.xls*", _ , "Please select file") If Ret1 = False Then Exit Sub 'Copy file Set wb2 = Workbooks.Open(Ret1) MsgBox wb2.BuiltinDocumentProperties("Creation Date") wb2.Sheets(1).Select wb2.Sheets(1).Copy After:=wb1.Sheets(2) 'Close opened file wb2.Close savechanges:=False Set wb2 = Nothing Worksheets("Cover").Activate End Sub 

如果Microsoft Excel没有为其中一个内置文档属性定义值,则读取该文档属性的Value属性会导致错误。

从Workbook.BuiltinDocumentProperties属性

总是有一个文件创builddate,因此你很容易发现这个错误。 我从来没有得到这个错误。 即使是新创build的文件还没有被保存给你一个“文件创builddate和时间”。

这是一个替代scheme。

 Dim CtdDate As String Dim fs As Object, f As Object Ret1 = Application.GetOpenFilename("Excel Files (*.xls*), *.xls*", _ , "Please select file") If Ret1 = False Then Exit Sub Set fs = CreateObject("Scripting.FileSystemObject") Set f = fs.GetFile(Ret1) CtdDate = f.DateCreated Set wb2 = Workbooks.Open(Ret1) MsgBox CtdDate