Excel日期字段转换问题

cor*_*ews 4 c# excel

我目前有一张excel表,其中一列是日期格式.

我打开电子表格时看到的内容类似于12/29/09,程序看到了40176.

我发现这是我将列更改为常规文本时的值.

我的问题是如何读取值12/29/09而不是40176或者如何将40176更改为有效日期?

我的程序在c#中必须在c#中读入


这是我的连接的示例代码,如果它有帮助.

Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
string myPath = @"C:\Test.xls";
excelApp.Workbooks.Open(myPath, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "t", false, false, 0, true, 1, 0);

 Microsoft.Office.Interop.Excel.Sheets sheets = excelApp.Worksheets;
 Microsoft.Office.Interop.Excel.Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)sheets.get_Item(1);
 excelApp.Visible = true;

 if(((Microsoft.Office.Interop.Excel.Range)excelApp.Cells[r, 1]).Value2 != null)
     DateString = ((Microsoft.Office.Interop.Excel.Range)excelApp.Cells[r, 1]).Value2.ToString();
Run Code Online (Sandbox Code Playgroud)

Ree*_*sey 12

您可以使用DateTime.FromOADate()将double转换为DateTime值.