对于Excel正在执行的“自动数据转换”,我有一个非常具体的问题。首先,我将尝试解释我在做什么以及Excel如何取笑我)C#将日期转换为Excel中单元格中的文本(互操作)
我的程序正在为来自温度传感器的报告创建图表。在报告中,第一列是读数日期,第二列是该日期的传感器读数。问题是如果第一列是DateTime格式,Excel会自动选择“XAxis系列”:
Here是Excel如何处理图表“气味”日期格式的示例。 ..
和Here是图表看起来如果第一列是文本格式。
我尝试了一些变体来转换第一列中的值,但一切都太慢或弄乱了值。 到目前为止,“最快”的方式,我发现是:
foreach(Range cell in firstCol.Cells)
{
if (cell.Value is DateTime && !(cell.Value).ToString().Contains("\'"))
{
cell.Value = "\'" + cell.Value;
}
}
但是这不够快。想象一下100张(每个传感器1张)和每张2500到4000行之间的纸张。
我试过的东西:
usedRange.NumberFormat = "@";
,因为它是在几个互联网上的地方建议,但不为日期格式工作。它转换成这样: 01/12/2016 00:30这样:42705.02083。
所以我的问题是,如果有人可以建议更好或更快的方式来转换日期或使Excel作为文本读取日期时间而不会搞乱任何东西。
其实我很可能已经在整个互联网上搜索了如何以特定的方式修复x轴,但是我没有找到任何东西。我正在谈论的是一个选项,如果它存在的话,可以用一条线修复我的整个问题。 https://drive.google.com/open?id=0Byub5fWTQ5hPNGpUckhtZkVKYjQ这就是我正在谈论的选项。如果任何人有任何想法如何在C#代码中使用该选项,请告诉我。 –