我有一个CSV文件,其中包含格式为m / dd / yyyy的日期,如下所示
1/06 / 2013,15,1,1 / 06/2013 0:15,1,6.44
当我在Excel中打开文件时,日期被正确转换 - 1/06/2013的数值为41,426.00,MONTH()函数返回6.
当我使用Microsoft.Office.Interop.Excel使用Open()或OpenText()方法打开同一个文件时,日期转换为41,280。00(2013年6月1日)。
您是否可以使用Microsoft.Office.Interop.Excel打开CSV文件,以便它打开就像用户从Windows shell打开文件一样?
此致 戴夫
答案 0 :(得分:2)
我自己埋没在这个问题的底部 - Excel VBA date formats/values change when file is opened programatically
workbook = workbooks.Open(filename, Local: true)
Open()有一个Local属性,当为false时,它假设mdy顺序为不明确的日期,当为true时它使用本地机器设置,在澳大利亚是dmy