【问题标题】:External file properties not updated - VBA外部文件属性未更新 - VBA
【发布时间】:2015-08-17 08:13:49
【问题描述】:

我有一个宏可以读取外部文件属性,例如创建日期。我从中读取的文件存储在服务器上。不幸的是,第一次运行宏时返回的日期不是正确的。只有当我打开文件或多次运行宏时,才会返回创建的正确更新日期。

除了打开文件或循环直到日期正确之外,有没有人知道如何解决该问题?

代码如下:

strFilename = "<FILENAME>"

Workbooks.Open strFilename
Workbooks("strFilename").Close

Set oFS = CreateObject("Scripting.FileSystemObject")

lastcreatedLTVfile = CDate(Format(oFS.GetFile(strFilename).DateCreated, "dd.mm.yyyy"))

【问题讨论】:

  • 什么是“不正确的”?返回的究竟是什么?
  • Workbooks("strFilename").Close 应该是 Workbooks(strFilename).Close。我看不出这如何解决您的问题,但无论如何都需要修复。另外,为什么要取一个日期,将其转换为字符串,然后再将其转换回日期?
  • 当我打开文件并关闭文件时,日期会更新,我可以得到正确的日期。但是开合需要时间……
  • 我使用的是字符串,因为返回的日期格式不是我需要的,所以我需要先格式化,然后再转换成日期

标签: vba file excel datecreated


【解决方案1】:

你想要DateCreated 还是真的想要DateLastModified?在你的问题中你说“正确的更新日期”所以我猜你应该使用DateLastModified

【讨论】:

  • 我想要DateCreated。但它返回一个不正确的。例如,文件是在早上创建的,但脚本返回的是上周的日期。
  • 所以上周文件根本不存在?
  • 它确实存在,但每周都会被覆盖。
猜你喜欢
  • 1970-01-01
  • 2017-01-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-30
  • 1970-01-01
  • 2021-10-12
  • 2019-03-04
相关资源
最近更新 更多