在Excel中显示一个时间跨度

我有一个时间跨度存储为sql中的varchar格式为totalhours-totalminutes-totalseconds。 现在我必须将这些信息导出到excel中。

我遇到的问题是,我不能在我的生活中find一个Excel格式,将正确显示这些信息。 有没有一种方法可以正确显示这些信息? 我在C#中使用XLS来输出这个信息。

示例input: 48 : 00 : 11

示例输出: 1900/02/17 12:11:00 AM或48.0076388888889

对于格式化,您需要设置自定义时间格式:

[h]:mm:ss

…将显示持续时间超过24小时的小时数。 如果您在Excel单元格中键入“48:00:11”,它将为您创build该自定义格式(至less,它在我的机器上的Excel 2007中刚刚完成)。 删除格式显示的值是预期的双倍(所有非string都是):2.000127,这是持续时间的天数(以时间为分数)。

把这个string值放到C#的工作表中可能会有不同的结果:我怀疑是从你获得的48.007638 …值中得到的。 既然你有C#在你的处置,我会倾向于计算的时间推移之前的天数Excel的,然后格式如上。