在excel中使用负面时间

我使用一个macros来从SP中检索数据,然后把它放在一个数据表中,在一列中我有多个时间值(h:mm),其中一些是正数(12:23)和一些负数(-1:23 ),现在我想有一个平均的时间,但我有一个负值的错误。

我在网上发现,使用1904年的date系统,解决了这个问题,但不是在我的情况,因为我把一个单元格的负值,没有减去两个时间单元格的结果。

例如,1904年的date系统在这种情况下工作:

A:1 -> 3:23 A:2 -> 4:23 A:3 -> =A1-A2 -> -1:00 

我的情况:

 A:1 -> 3:23 A:2 -> -4:23 (built in code behind as string value and placed it in the cell) A:3 -> =A1-A2 -> ERROR 

任何帮助将不胜感激

编辑:

以下是我如何设置单元格的值:

 .Cells(i, k).Value = NetWorkhours(.Cells(i, 19).Value, .Cells(i, 20).Value, True) 

NetWorkHours返回两个date之间的差异,但只有工作小时的变体

是的,1904年date系统修复了这个问题。 但是,如果您的工作簿包含指向其他文件的链接,则不可取,因为您可能会收到意外的结果。

你如何将-ve值放在Cell A2中? 我只复制一个公式结果(得到-ve值)并粘贴为单元​​格A2中的值,它完美的工作。

另外,当你做A1 – A2,那么究竟发生了什么

3:23 – (-4:23)=> 3:23 + 4:23 => 7:46

跟进

这是你input值的方式使它成为一个问题:)

而不是A1 – A2试试这个公式

 =IF(LEFT(A1,1)="-",VALUE(MID(A1,2,LEN(A1)-1)),VALUE(A1))-IF(LEFT(A2,1)="-",VALUE(MID(A2,2,LEN(A2)-1)),VALUE(A2))