我正在尝试开发一些VBA,它将检查文件上的日期修改部分。我在网上找到了一些使用FileSystemObject来执行此操作的代码,但是我在VBA中遇到“类型不匹配”错误,希望有人可以提供帮助。

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


(自然,我已经在那里输入了实际的文件路径!)

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脚本运行时参考,但这仍然无法正常工作。有任何想法吗?我是否缺少其他必需的参考?

提前致谢
亚历克斯

最佳答案

问题是您在测试过程中声明了变量FileLastModified,该变量与要调用的函数具有相同的名称。如果删除该行,则该行应该有效:

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

07-26 09:40