2015-07-11 57 views
3

我喜歡在Access 2010數據庫中創建和更新表,查詢,表單等時創建一個列表。如何比較表,查詢,表單等創建和最後修改的MS-Access日期?

從理論上講這是可能的一個小VBA代碼,但不幸的是這個代碼顯示了錯誤的信息。我自己進行了測試,並且在此處由Microsoft確認:https://support.microsoft.com/en-us/kb/299554

訪問在導航面板上顯示正確的修改日期,但似乎無法通過VBA或任何表格訪問此信息。前段時間我在網上搜索了這個,有幾個人證實了這個問題,但沒有人回答。

現在我的問題:是否有人知道如何正確的修改日期的信息從Access(導航面板中顯示)出口?

如果這是不可能的(我目前的研究表明這一點)沒有人知道一個可靠的方法來一個數據庫文件的數據進行比較,並顯示在表,查詢,表格等所有的區別是什麼?

這是所有關於訪問對象的設計,而不是對錶中存儲任何數據。

回答

5

該鏈接的文章介紹了爲什麼LastUpdated財產不會給你你想要的數據庫對象,如窗體和報表。不幸的是,它並沒有告訴你,你可以使用適當的CurrentProject集合中的DateModified

例如,考慮在導航窗格形式的這個屏幕捕捉:

Navigation pane showing a form

當引用在Documents集合的形式,LastUpdatedDateCreated都返回相同的值:

? CurrentDb.Containers("Forms").Documents("Form1").DateCreated 
8/20/2012 10:51:07 PM 
? CurrentDb.Containers("Forms").Documents("Form1").LastUpdated 
8/20/2012 10:51:07 PM 

但是DateModified對於CurrentProject.AllForms收集中的相同表格離子賦予您的顯示在導航窗格中的值:

? CurrentProject.AllForms("Form1").DateModified 
7/1/2015 6:47:40 AM 

注意你也可以通過DateCreatedAllForms

? CurrentProject.AllForms("Form1").DateCreated 
8/20/2012 10:51:07 PM 

其他CurrentProject系列包括:AllMacros; AllModules;和AllReports。請注意模塊一起保存,以便DateModified顯示項目上次保存的時間。這意味着每個模塊將顯示相同的時間,與導航窗格中顯示的相同。

+0

謝謝,這會讓我的生活變得更輕鬆。我想知道爲什麼MS不發佈這些重要信息。 – Edgar