2014-03-13 11 views
1

我通過vb6開發程序來讀取.csv文件中的數據並將其保存到數據庫中。我使用excel應用程序打開.csv文件進行閱讀,但在列日期數據是日期和月份切換。在vb6打開.csv文件與Excel中,但日和月切換,爲什麼?

objExcelAppl.Workbooks.Open FileName:=location, Delimiter:=",", ReadOnly:=False, Format:=xlCSV

ODate = objExcelAppl.ActiveSheet.Cells(RowOffset + i, 4).Value

如。

數據: 「2014年11月1日」

但擅長應用寫着: 「2014年1月11日」

爲什麼呢?我該怎麼辦?

+0

'objExcelAppl.Workbooks.Open文件名:=位置,分隔符:= 「」,只讀:=假,格式:= xlCSV大館= objExcelAppl.ActiveSheet.Cells(RowOffset + 1,4)。價值' 在記事本的數據是「2014年11月1日」,但是當我讀到這個代碼ODate>「01/11/2014」 – shalord

+0

[ISO 8601](http://en.wikipedia.org/wiki/ISO_8601)修復了根本原因:) – Deanna

+0

什麼是正確的日期?配置使用的機器的區域設置/日期格式以及Excel顯示的格式是什麼?請注意,VB6/VBA日期文字總是美國格式('dd/mm/yyyy')。顯示的值應該在系統區域設置中。 – Deanna

回答

0

我以前面臨過類似的問題,但我的情況是,當數據導出爲ex​​cel時,日期和月份會切換。

我通過將數據發送到excel之前將日期格式轉換爲「yyyy-mm-dd」來解決此問題。

或者因爲它在csv文件中,您可能只需編寫一個程序將其作爲文本文件讀取並逐行處理數據。

相關問題