Этот пример описывает, как создать в Excel календарь 2015 года (или 2017, 2018 и т.д.).
Примечание: Приведенные ниже инструкции не научат вас форматированию документа. Мы предполагаем, что вы уже знаете, как изменить размер и стиль шрифта, вставлять строки и столбцы, добавлять границы, изменять цвет фона и т.д.
Вот как выглядит январь 2015:
Важный момент: Как же мы смогли объяснить Excel, что январь 2015 года начинается в четверг?
- Чтобы наши формулы было легче понять, мы создадим следующие имена:
- CalendarYear – календарный год. Значение будет храниться в ячейке K5.
- JanOffset – имя формулы, которая представлена ниже:
=DATE(CalendarYear,1,1)-WEEKDAY(DATE(CalendarYear,1,1))
=ДАТА(CalendarYear;1;1)-ДЕНЬНЕД(ДАТА(CalendarYear;1;1))
Пояснение:
- Даты в Excel хранятся в виде чисел.
- Программа подсчитывает количество дней, прошедших с 0 января 1900 года.
- Функция DATE (ДАТА) возвращает значение, представляющее дату.
- Функция DATE (ДАТА) принимает три аргумента: год, месяц и день.
- Функция WEEKDAY (ДЕНЬНЕД) возвращает число от 1 (воскресенье) до 7 (суббота), представляющее день недели.
К примеру, 1 января 2015 года – то же самое, что 42005. Эта дата приходится на четверг. Другими словами, =ДАТА(CalendarYear;1;1) равняется 42005, а ДЕНЬНЕД(ДАТА(CalendarYear;1;1)) равняется 5. В итоге переменная JanOffset равна 42005-5=42000.
Примечание переводчика: В некоторых странах мира, в частности в США, принято считать первым днем недели – воскресенье. Так вот, формула JanOffset вычисляет дату, которая приходится на последнюю субботу декабря, который предшествует рассматриваемому нами январю. В данном примере эта дата является отправной точкой.
- Давайте взглянем на формулу в ячейке B4.
=IF(AND(YEAR(JanOffset+1)=CalendarYear,MONTH(JanOffset+1)=1),JanOffset+1,"")
=ЕСЛИ(И(ГОД(JanOffset+1)=CalendarYear;МЕСЯЦ(JanOffset+1)=1);JanOffset+1;"")
Пояснение: Выражение JanOffset+1 – это дата, которая отстоит на (5-1) дней от 1 января 2015 года. Эта формула проверяет, равняется ли год этой даты переменной CalendarYear и равняется ли месяц этой даты январю (1). Если это так, формула возвращает дату, а если нет – пустую строку («»).
- Давайте взглянем на формулу в ячейке F4.
=IF(AND(YEAR(JanOffset+5)=CalendarYear,MONTH(JanOffset+5)=1),JanOffset+5,"")
=ЕСЛИ(И(ГОД(JanOffset+5)=CalendarYear;МЕСЯЦ(JanOffset+5)=1);JanOffset+5;"")
Пояснение: Выражение JanOffset+5 – это дата, которая отстоит на (5-5) дней от 1 января 2015. Это – первый день года! Формула на рисунке проверяет, равняется ли год этой даты переменной CalendarYear и равняется ли месяц этой даты январю (1). Результат положительный! Excel возвращает дату.
- Мы изменили тип формата на «формат дня», чтобы отображать только день месяца.
Примечание: Аналогичным образом можно создать формулы для других дней в январе и других месяцев. Этот инструмент позволит создать календарь на любой год! Просто используйте счетчик для выбора года, чтобы получить календарь на другой год.
Урок подготовлен для Вас командой сайта office-guru.ru
Источник: http://www.excel-easy.com/examples/calendar.html
Перевел: Антон Андронов
Правила перепечатки
Еще больше уроков по Microsoft Excel