2016-03-07 213 views
1

我有时间表,我需要计算两个时间值之间的差异。由于此表将被提供给所有的员工,我不能使用1904日期系统的,因此我决定用这种Excel计算时间之间的差异并用条件格式高亮显示

=IF(A1-B1<0, "-" & TEXT(ABS(A1-B1),"hh:mm"), A1-B1) 

这工作,并给出了一个负号的负值从而克服了哈希值## #####问题并在Excel 2007及更高版本中显示。

但是我不能创建条件格式的结果,因为很明显,值被解释为文本,我也不能用简单的求和来计算一组这些值。

编辑1

enter image description here

回答

0

您可以使用条件格式。

为了您的公式:

C1: =ABS(A1-B1) 

为了您的条件格式公式:

=A1<B1 

enter image description here

如果你也想拥有围绕价值负号(或括号)您也可以转到条件格式格式对话框的“数字”选项卡,并在正数字段中输入适当的字符串。

enter image description here

要小心,因为在C列中的值将始终是积极的,所以不要在后续计算中使用它们。使用A1:B1中的原始值来确定是增加还是减少

+0

罗恩,我确实实施了你的建议和条件格式,在负面和正面价值观上都起作用。但是我无法克服每月的计算,请参阅编辑1.使用的公式为= ABS(L8:L9) - (M8:M9)。 – Fab

+0

@FabianBorg我不明白你在做你的公式或编辑。你的公式将返回一个包含两个值的数组;并且您的修改不会显示任何行或列标签;即使它开始于A1,我也能理解该公式如何产生“每月计算”。而且,我无法手工将Excel截图放入Excel表格中,而无需费力地复制它。请阅读[如何提供示例]的帮助(http://stackoverflow.com/help/mcve) –

+0

我已经在这一个月了,但我仍然无法解决如何计算每月总计为负值不被计算。我在这里附上一个链接到电子表格https://onedrive.live.com/redir?resid=B1AA59DC4854E3D8!395156&authkey=!ADq6XwSFqG6lLWg&ithint=file%2cxlsx – Fab

1

AFAIK没有真正在Excel中做到这一点的好方法。而且我发现,如果你想保持数字时间值无法使用1904和日期最好是使用自定义数字格式如下所示:

hh:mm;-[m]" mins" 

这通常显示阳性倍,负次为一数分钟。因此,+1:45将显示为01:45,-1:45将显示为-105 mins。或为了一致性,你可以去:

[m]" mins" 

哪种格式的所有内容为分钟。

这是可行的,因为“经过时间”格式([h],[m][s])的确处理负向时间。不幸的是,你的格式不能超过一个,并且[h]:mm只是再次触发散列符号。

+0

我喜欢该解决方案,只要输出以分钟为单位是可接受的。 –

相关问题