将表示NEGATIVE TIME值的TEXT转换为数字或时间值以添加(Excel)

我有一个电子表格(Office 2007版本的Excel),其中包含负值时间值的文本条目,例如“-0:07”,因为员工比预期的完成工作less了7分钟。 我需要对这些条目进行math计算,并且正在寻找比我迄今为止所提出的更优雅的公式/方法。

我知道约1904年date系统和*或/ 24来回转换,问题是得到一个公式,将文本input识别为负值。

我已经尝试了value(),* 1,如果数字是正数,它们都在文本字段上工作,但“ – ”似乎把这些弄乱了。 甚至粘贴特殊/添加无法识别这些数字。

这就是我想出来的结果,但是这对我来说太难看了:

=IF(LEFT(E5,1)="-",((VALUE(RIGHT(E5,LEN(E5)-1)))*-1.0),VALUE(E5)) 

在这个例子中,显然我的文本input在单元格E5中。

这是有效的,所以我不是绝望的解决scheme,但为了教育目的(和更小的代码),我想知道是否有更好的办法。 有没有人有一个更短,更容易的build议?

谢谢。

PS – 这里有一个很有意思的东西,我在工作中使用Excel,但不在家中,所以我上传了一个样本电子表格到Google文档,它实际上正确地处理这些条目的Value()命令。 奇怪,是吧?

再次感谢您的任何build议。

Excel不处理单元格中的时间跨度。 它只处理时间。 当你做“00:07”时,它会被转换为0.0048611,这与1900年1月1日12.07时相同。 所以,如果你做了2分钟减去7分钟,至多会下午11时55分。

你这样做是唯一的方法。