2012-03-26 41 views
3

我想开发一些VBA,它将检查文件上的日期修改部分。我发现了一个位码在线的使用FileSystemObject要做到这一点,但我碰上VBA“类型不匹配”的错误,并希望有人能帮助..VBA Excel文件系统对象

Sub test() 
Dim FileLastModified As Variant 
MsgBox FileLastModified("S:\FILEPATHISHERE.xls") 
End Sub 

(当然,我已经进入了实际filepath there!)

Function FileLastModified(strFullFileName As String) 
Dim fs As Object, f As Object, s As String 

Set fs = CreateObject("Scripting.FileSystemObject") 
Set f = fs.GetFile(strFullFileName) 

s = UCase(strFullFileName) & vbCrLf 
s = s & "Last Modified: " & f.DateLastModified 
FileLastModified = s 

Set fs = Nothing: Set f = Nothing 
End Function 

我刚刚添加了Microsoft Scripting Runtime Reference,但这仍然不起作用。有任何想法吗?我是否缺少其他必需的参考?

在此先感谢亚历克斯

回答

1

的问题是,您在测试过程中,具有相同的名称,只要你想调用的函数中声明一个变量FileLastModified。如果你删除该行应该工作:

Sub test() 
    MsgBox FileLastModified("S:\FILEPATHISHERE.xls") 
End Sub 
+0

完美 - 非常感谢! – alexei7 2012-03-26 10:31:29