2
我從Excel中讀取一個日期列作爲這樣的Excel的日期欄不正確讀取
var y = DateTime.FromOADate(GetExcelCellValue(range, rowIndex, DateColumnNumber));
private dynamic GetExcelCellValue(Microsoft.Office.Interop.Excel.Range range, short? row, int col)
{
var cell = (range.Cells[row, col] as Microsoft.Office.Interop.Excel.Range);
return cell == null ? null : cell.Value2;
}
,但我得到一個錯誤異常=
The best overloaded method match for 'System.DateTime.FromOADate(double)' has some invalid arguments"
,當我用
var x = DateTime.FromOADate(Convert.ToDouble(GetExcelCellValue(range, rowIndex, DateColumnNumber)));
我得到的日期值爲30/12/1899
有什麼想法?
謝謝! 但是,我現在得到一個錯誤: {「不能隱式地將類型'System .__ ComObject'轉換爲'double'」} 有什麼令人困惑的是,當我明確地施放時,我不會收到錯誤,被錯誤地轉換 – 2014-10-19 12:17:11
你的'cell.Value2'總是'double'類型的嗎?或者它可以是任何類型? – Rahul 2014-10-19 12:18:56
它可以是任何類型。 – 2014-10-19 12:38:59