標題:
如何修正匯入檔案時的正確日期格式
[打印本頁]
作者:
enoch
時間:
2013-2-18 17:43
標題:
如何修正匯入檔案時的正確日期格式
請問用Workbooks.Open 開啟檔案時, 何時才要使用 Local:=True
有時使用 Local:=True 時, 日期格式會正確, 有時則剛剛相反
如電腦的日期格式是ddmmyyyy, 如何檢查檔案的日期格式是否相同, 及作出修正
請指教
作者:
enoch
時間:
2013-2-18 18:01
更新問題, 電腦日期格式是ddmmmyyyy
如何檢查要開啟的檔案日期格式是否相同
若檔案是mmmddyyyy 時, 如何作出修改
作者:
luhpro
時間:
2013-2-19 22:09
本帖最後由 luhpro 於 2013-2-19 22:10 編輯
更新問題, 電腦日期格式是ddmmmyyyy
如何檢查要開啟的檔案日期格式是否相同
若檔案是mmmddyyyy 時, 如何 ...
enoch 發表於 2013-2-18 18:01
觀看 WorkBooks 的 Open 方法中 Local 參數的說明 :
Local 選擇性的 Variant。
True 根據 Microsoft Excel 的語言儲存檔案 (包含控制台設定)。
False (預設值) 則根據 Visual Basic for Applications (VBA)
(通常為美式英語,除非執行 Workbooks.Open 的 VBA 專案是舊版的全球 XL5/95 VBA 專案) 的語言儲存檔案。
可以發現這個參數並不是指定日期或時間要以什麼格式來表示的.
所以想要達成你想要的目的,
應該是要從其他方面來著手.
我查了一下應該是不需要如你所述要做什麼修正,
而是只要於使用時指定 存(或顯示)成 我們想要的格式就可以了.
舉例如下:
Sub ex()
Dim fs, f, s
filespec = "C:\CONFIG.SYS" ' 要開啟的檔案名稱
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFile(filespec)
s = UCase(filespec) & vbCrLf & vbCrLf
s = s & "檔案建立: " & Format(f.DateCreated, "mm/dd/yyyy hh:mm") & vbCrLf
s = s & "最後存取: " & Format(f.DateLastAccessed, "yyyy/mm/dd hh:mm:ss") & vbCrLf
s = s & "最後變更: " & Format(f.DateLastModified, "hh:mm:ss m/d/yy")
MsgBox s, 0, "檔案資訊"
End Sub
複製代碼
以下是 Excel 內的說明,你可以參考看看 :
使用者自訂日期/時間格式範例
以下表格列出以使用者自訂日期/時間格式來顯示 December 7, 1958的範例:
格式 顯示結果
m/d/yy 12/7/58
d-mmm 7-Dec
d-mmmm-yy 7-December-58
d mmmm 7 December
mmmm yy December 58
hh:mm AM/PM 08:50 PM
h:mm:ss a/p 8:50:35 p
h:mm 20:50
h:mm:ss 20:50:35
m/d/yy h:mm 12/7/58 20:50
作者:
enoch
時間:
2013-2-20 10:40
不好意思, 可能詞不達意
想問問題是, 原本的檔案日期內容 : 3JAN2013
但開啟CSV檔案時變了1MAR2013
有辦法解決問題嗎?
作者:
GBKEE
時間:
2013-2-23 16:28
回復
4#
enoch
原本的檔案日期內容 : 3JAN2013 ,但開啟CSV檔案時變了1MAR2013
開啟 CSV檔案後執行, 如日期位於A1
Sub EX()
[A1] = DateSerial(Year([A1]), Day([A1]), Month([A1]))
End Sub
複製代碼
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)