Страницы: 1
RSS
Определение порядкового номера месяца в году в таблице периодов
 
Добрый день, Форумчане.
Возник такой вопрос, который ещё и влечёт за собой общий по Excel.

Сначала про пример.
Я пытаюсь в таблицу записать номер месяца в году. В таблице есть порядковые номера столбцов, к которым я привязываюсь.
Алгоритм такой:
- указывается начальная дата;
- по начальной дате берётся номер месяца внутри года;
- к номеру прибавляется порядковый номер столбца-1;
- берётся остаток от деления на 12.

Такая логика работает со всеми месяцами, кроме, собственно, 12. Почему? Простоя остаток от деления на 12 месяца №12 = 0.
А мне надо, чтобы формула выдавала 12.

Отсюда второй вопрос.
Можно конечно написать условие вида:
=ЕСЛИ(Длинное_выражение + условие сравнения;Длинное_выражение;Другой_ответ)

Такая конструкция плоха тем, что Длинное_выражение приходится дублировать.

Мой вопрос:
Как заменяется такое решение?
Есть, может быть, стандартный вариант?
 
Можно так, формула в В3:
Код
=1 + ОСТАТ(МЕСЯЦ($B$1)-1+B2 - 1;12)
Вот горшок пустой, он предмет простой...
 
Лучше напишите смысл всего этого. Что в итоге надо получить? Может формула-то совсем другая потребуется. Например, эта тоже работает:
Код
=МЕСЯЦ(ДАТА(ГОД($B$1);МЕСЯЦ($B$1)+B2;0))
Изменено: Дмитрий(The_Prist) Щербаков - 24.01.2020 10:17:16
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
PooHkrd, спасибо большое.
Для этого случая именно то, что нужно. Сам бы мог, честно говоря, догадаться (себе упрёк).

Дмитрий(The_Prist) Щербаков, текущая проблема решилась формулой.
Но вот общий вопрос остался таким, какой он есть.
 
Цитата
Kirill Gureev написал:
общий вопрос остался таким, какой он есть
а какой он есть? В теме его не видать :).
Я к чему вообще спросил: просто условная дата проекта - 01.02.2020. Т.е. февраль, т.е. второй месяц года. А далее у нас идет в строках с 1(надо полагать это порядковые номера месяцев). И только в третьей строке с 2, но привязывается этот результат к строке выше, где все начинается с 1. Суть манипуляций?
Изменено: Дмитрий(The_Prist) Щербаков - 24.01.2020 10:24:03
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Как вариант:

=МЕСЯЦ(КОНМЕСЯЦА($B$1;B2-1))
Изменено: Kart - 24.01.2020 10:25:25
 
Дмитрий(The_Prist) Щербаков, тут такая история, что строится таблица для проекта, а нём, есть показатели зависящие от порядкового номера месяца в проект, а есть от номера месяца в году (сезонность, например).

Но меня интересовал вопрос об обработке исключений.
Вот я, например, написать Длинное_выражение. Оно в целом считает так, как надо, но есть небольшое исключение, которые в обычной жизни я бы отработал через :Если". Однако, это топорный вариант из-за необходимости дублировать выражение, если оно удовлетворяет.
 
Именования формула спасет от написания повторно, но не от повторного вычисления. Иных вариантов не вижу в рамках описанного. Нельзя одной супер-простой формулой обработать любые исключения в любых формулах, т.к. все напрямую зависит именно от логики формулы и требуемого результата. И если в работе формулы не возникает ошибки - то и определить автоматически нельзя какой кусок требует иной логики(как, например, работает ЕСЛИОШИБКА - ветвление идет только при возникновении ошибки в формуле).
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
?
Порядковый номер месяца в году всегда один и тот же - от 1 до 12...
 
Спасибо, разобрался
Страницы: 1
Наверх