0

我有一个 MS Access (2010) 表单,其中包含一堆链接到 XLSX 文件的表格(均存储在本地)。在主窗体上是一个内置的自动更新功能,它基本上从本地中央服务器复制任何新版本的前端和 XLSX 文件(每天自动生成)。是否可以从主窗体上的本地 XLSX 文件中添加修改日期/上次写入时间戳?

我试过了:

  1. ="Last Modified: " & DLookUp("[DateUpdate]","MSysObjects","[Name] = '***tablename***'")作为控制源,但这并没有提供我需要的数据。

  2. 我可以通过命令在 powershell 中获得所需的结果(Get-ItemProperty -Path $source).LastWriteTime.tostring("dd MMM yyyy HH:mm"),尽管我不知道如何将结果绑定到访问表单中。有任何想法吗?

值得注意: http: //msdn.microsoft.com/en-us/library/windows/desktop/ms724926%28v=vs.85%29.aspx(C++ 对我来说是陌生的,甚至不确定它是否适用于这个问题)

4

1 回答 1

0

文件日期时间

返回一个 Variant (Date),它指示文件创建或上次修改的日期和时间。

Dim dtLast As Date
dtLast = FileDateTime("F:\Documents and Settings\student\Desktop\Book1.xlsx")
Debug.Print dtLast      '29/06/2013 19:46:03

然后,您可以使用Format适当地显示该值,也可以将其设置为Captiona Label

Debug.Print Format(dtLast, "ddd dd mmm")    'Sat 29 Jun

如果您想要访问表的此信息,则:

    Dim obj As AccessObject, dbs As Object

    Set dbs = Application.CurrentData
    Set obj = dbs.AllTables("tblStaff")
    Debug.Print obj.Name; " "; obj.DateModified; " "; obj.DateCreated
    'tblStaff 16/04/2013 14:50:46  28/02/2010 19:46:56
于 2013-06-29T23:20:30.983 回答