У меня есть электронная таблица с тремя столбцами для "Дата", "Валюта" и "Сумма".

Date        Currency    Amount  Month
06.02.2015  EUR         188     March
30.01.2015  EUR         285     January

Я создаю столбец "Месяц" из столбца "Дата", используя следующую формулу, а затем форматирую столбец "Месяц" в MMMM:

=DATE(YEAR(A2);MONTH(A2);DAY("0"))

(Я делаю это, потому что мне нужно сгруппировать данные в сводную таблицу по месяцам.)

Проблема: Как видно из выдержки, месяц, возвращенный для первого значения месяца, неверен. Там написано "Март", когда это действительно "Февраль". Что я здесь не так делаю?

Для первого значения месяца (или значений, в зависимости от того, сколько записей существует в первом указанном месяце) в электронной таблице, libreCalc всегда кажется на месяц вперед. Остальные значения, начиная со следующего месяца, всегда верны и работают нормально. Не имеет значения, указаны ли месяцы январь-декабрь или наоборот, как в моем примере.

Спасибо за помощь!

1 ответ1

1

Я считаю, что проблема в том, что функция DAY("0") возвращает ответ 30. Поскольку в феврале менее 30 дней, это вызывает проблемы с датами в феврале.

Ввод только 0 для третьего аргумента функции DATE приводит к тому, что он возвращает последний день предыдущего месяца, что также не то, что вы, кажется, хотите. Я бы рекомендовал использовать 1 для третьего аргумента функции DATE:

=DATE(YEAR(A2);MONTH(A2);1)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .