Нахождение разницы во времени с помощью OpenOffice.org Calc

У меня есть данные в этом формате:

      Action  (A)                  |     Time logged (B)
  ---------------------------------|-----------------------
1 |Policy converted successfully   |   19-FEB-10 18:34:01   
2 |Policy converted successfully   |   19-FEB-10 18:34:10   
3 |Policy converted successfully   |   19-FEB-10 18:34:21   

Я должен найти разницу во времени между строкой 2 и строкой 1 в секундах (или минуты/часы). Как я могу сделать то же использование OpenOffice.org Calc? Я попробовал =B2-B1, получающаяся ячейка имела Err: 529 как результат. Я попытался поместить маску формата DD-MMM-YY HH:MM:SS на источнике, а также конечных ячейках, но бесцельно. Какие-либо подсказки относительно того, как выполнить это?

Существует приблизительно 2 800 строк записей, проходить каждого просто не возможно.

4
задан 22.02.2010, 23:24

4 ответа

Как Chris ответил, Ваша проблема ist, что Ваш рабочий лист хранит даты как текстовую строку, не как дата.

В дополнение к этому ячейка может только быть датой (т.е. день на каландре), или время (wallclock время), не оба.Править: Не верный, это работает просто великолепно. Это просто, что нет никакой функции парсинга для парсинга date+time сразу.

Таким образом, сначала необходимо разделить строку date+time на два столбца. Затем используйте DATEVALUE для преобразования даты и TIMEVALUE для преобразования времени. Затем можно вычислить с ними.

Чтобы сделать это, можно использовать формулы как это:

Policy converted successfully  |  19-FEB-2010 18:34:01 | =LEFT(B1; 11) | =RIGHT(B1;8) | =DATEVALUE(C1) | =TIMEVALUE(D1) | =E1+F1

Объяснение:

  • Первые две формулы (ОСТАВЛЕННЫЙ, ПРАВО) разделяют строку на дату и время, для парсинга их отдельно.
  • Следующие два (DATEVALUE, TIMEVALUE) анализируют строку как дату / время
  • последние объединения date+time в одну ячейку (внутренне дата и время просто числа плавающие, таким образом, можно добавить),

Теперь можно использовать их для содержания основы. Конечно, Вы могли объединить формулы для использования меньшего количества ячеек.

Если последний столбец не обнаруживается как date+time, но как число, выбирает форматирование "даты".

5
ответ дан 09.01.2020, 04:12

Что-то вроде этого помогло бы?

http://www.ehow.com/how_5924425_calculate-time-differences-openoffice.html

Мне не установили OO, так не может проверить. В основном используйте функцию DATEDIFF.

1
ответ дан 09.01.2020, 04:12

Кажется, что данные являются строкой и должны быть преобразованы в дату сначала. Даты внутренне хранятся как числа с плавающей точкой, таким образом, можно просто вычесть их и получить различие (результату, возможно, все еще понадобится форматирование в зависимости от того, что Вы ищете).

1
ответ дан 09.01.2020, 04:12

Та ошибка означает что-то как этот, форматирование ячейки испорчено. Я не могу воспроизвести его (3.1, Ubuntu 9.10) (это просто работает на меня), но необходимо проверить 'реальное' содержание ячейки, поскольку это обнаруживается в текстовом поле редактирования на панели инструментов. Также попытайтесь установить Форматирование Ячейки (Щелчок правой кнопкой-> Ячейки Формата...->, Числа) к Типу Даты (не просто использующий маску, устанавливают его явно на одну из предопределенных Масок Даты).

1
ответ дан 09.01.2020, 04:12

Теги

Похожие вопросы