C# 不从电子表格中读取 excel 日期

标签 c# excel

我使用 Microsoft.Office.Interop.Excel 上传了一个 Excel 电子表格。当我尝试读取具有日期值的单元格以便将其插入我的数据集中时,它不会被识别为日期并且它会作为随机数出现?
这是我指代细胞的方式:

Excel.Range startDate = objsheet.get_Range("C1:C" + lastUsedRow, System.Type.Missing);
double dbl = Convert.ToDouble(startDate);
DateTime conv = DateTime.FromOADate(dbl);
(row[3] = ((Microsoft.Office.Interop.Excel.Range)objsheet.Cells[rowIndex, 4]).Value2;)

最佳答案

来自 https://stackoverflow.com/a/4538367/1397117

You need to convert the date format from OLE Automation to the .net format by using DateTime.FromOADate.

double d = double.Parse(b);  
DateTime conv = DateTime.FromOADate(d);


我在该答案下方回应使用 .Value 的建议而不是 .Value2 .

关于C# 不从电子表格中读取 excel 日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17927250/

相关文章:

c# - 通过 Interop 库 C# 向多个收件人发送邮件

c# - 如何将 DataTable 列的全部内容转换为 C# 中的分隔字符串?

sql - SSIS使用列位置而不是名称导入Excel文档

vba - 添加工作日的工作日功能

excel - 使用另一个单元格值引用范围

c# - 使用 BackgroundWorker 更新 UI 而不会卡住......?

c# - 在 FlowLayoutPanel 中拖放多个项目

c# - 使用带有 Regex 的 Linq 删除空匹配项

python - Pandas 仅将 1 个表导出到 Excel 但打印所有

Excel IF(OR) - 两个 OR 的公式有效但三个无效?