Я использую Excel 2007 и я пытаюсь вычесть эти два значения:
11:27:55.428
11:28:09.813
Я попытался отформатировать как время, так и "hh:mm:ss.000 " и каждый раз, когда я пытаюсь вычесть их, я получаю #VALUE.
Я использую Excel 2007 и я пытаюсь вычесть эти два значения:
11:27:55.428
11:28:09.813
Я попытался отформатировать как время, так и "hh:mm:ss.000 " и каждый раз, когда я пытаюсь вычесть их, я получаю #VALUE.

отлично работает для меня (Excel 2010). Я подозреваю, что по крайней мере один из ваших раз не был правильно проанализирован в Excel datetime.
попробуйте отформатировать два раза в общий формат (выберите их и нажмите Ctrl + Shift + ~). Если они не появляются в виде цифр, как показано ниже, то у вас есть ошибка разбора - то есть Excel не интерпретации как timedates.
hh:mm:ss.000 General
------------ -----------
Start time 11:27:55.428 0.477724861
End time 11:28:09.813 0.477891354
Difference 00:00:14.385 0.000166493
Если вы не можете получить значения для разбора правильно, когда вы вводите их в ячейку, вы можете использовать функцию Time (), чтобы получить правильные значения. Например:
=Время (11,27,55.428)

я отформатировал ячейки A1, A2 и A3 = hh:mm:ss.000
A1 = 11:27:55.428
A2 = 11:28:09.813
A3 = A2-A1 = 00:00:14.385

Excel не любит отрицательные даты/времени, поэтому, если вы вычитаете большее из меньшего, результат не будет отображаться правильно, если время отформатировано (хотя вы можете просто показать его как общее или число успешно).
хотя, в моей системе (работает 2007) он возвращает строку хэшей вместо if #VALUE, Так что это, вероятно, не является причиной вашей проблемы, но стоит иметь в виду при выполнении операций со значениями времени.

после долгого поиска, нашел это работает для меня.
=VALUE(LEFT(B4,8)-LEFT(A4,8))+VALUE((RIGHT(B4,3)/86400000)-(RIGHT(A4,3)/86400000))
