【问题标题】:FileScriptingObject: File.DateLastModified Function not working as expectedFileScriptingObject:File.DateLastModified 函数未按预期工作
【发布时间】:2013-10-22 16:20:16
【问题描述】:

我正在尝试使用 VBA 创建 Excel 报告以显示从输入文件读取的所有文件路径名称的上次修改日期属性值。这就是我获得 LastModified 日期的方式:

Set fso = CreateObject("Scripting.FileSystemObject")
Set currentFile = fso.GetFile(inputFile)
Sheet.Cells(r, 2).Value = currentFile.DateLastModified '<<<Incorrect value

每次读取文件显示的值是每种情况下的当前系统时间。 Windows 资源管理器向我显示正确的上次修改时间。调试时,我发现 DateLastModified 属性实际上与 Excel 报告显示的值相同。

为什么 DateLastModified 函数似乎不起作用?

不确定这是否相关,但我的电脑上确实有 msvbvm60.dll VB 运行时。会不会是注册问题?我无法从 VB.NET 项目中设置对 scrrun.dll 的引用。我按照说明here: 从 scrrun.dll 创建了一个新库。看起来它创建了一个具有不同名称的库 dll,Scripting.dll,我可以引用它。不确定这是否相关。

【问题讨论】:

    标签: .net vb.net vba


    【解决方案1】:

    创建文件时DateLastModified 属性为Null。一些进程会在文件关闭时更新值,但其中许多不会。

    【讨论】:

      【解决方案2】:

      我很抱歉。这是一个愚蠢的编码错误。我在我的输入文件上检查修改日期,而不是在从文件读取的路径上。呵呵!

      这是否值得不删除取决于社区。​​p>

      【讨论】:

        猜你喜欢
        • 2018-02-01
        • 2019-10-30
        • 2015-04-11
        • 2022-01-25
        • 2019-12-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多