Універсальна календарна формула

зміст

Якщо вам потрібен календар на аркуші Microsoft Excel, то у вас є багато різних способів – від кропіткого введення дат вручну до підключення спливаючих календарів з різних надбудов і макросів. Інший варіант - реалізувати універсальний календар на будь-яку дату за допомогою однієї (хоча і дуже страшної за звичкою) формули масиву.

Щоб використати його, створіть порожнє місце на аркуші так:

Універсальна календарна формула

Дата в клітинці B2 може бути будь-якою, тут важливі лише місяць і рік. Комірки в діапазоні B3:H3 можуть містити назви днів тижня в будь-якому зручному форматі. 

Тепер виберіть діапазон B4:H9 і введіть туди таку формулу:

=ЕСЛИ(МЕСЯЦ(ДАТА(ГОД(B2);МЕСЯЦ(B2);1)) <>МЕСЯЦ(ДАТА(ГОД(B2);МЕСЯЦ(B2);1)- (ДЕНЬНЕД(ДАТА(ГОД(B2);МЕСЯЦ(B2);1);2)-1) +{0:1:2:3:4:5}*7+{1;2;3;4;5;6;7}-1);» «; ДАТА(ГОД(B2);МЕСЯЦ(B2);1)- (ДЕНЬНЕД(ДАТА(ГОД(B2);МЕСЯЦ(B2);1);2)-1) +{0:1:2:3:4:5}*7+{1;2;3;4;5;6;7}-1)

В англійській версії це буде:

=IF(MONTH(DATE(YEAR(B2),MONTH(B2),1)) <>MONTH(DATE(YEAR(B2),MONTH(B2),1)- (WEEKDAY(DATE(YEAR(B2),MONTH(B2),1))-1) +{0;1;2;3;4;5}*7+{1,2,3,4,5,6,7}-1),””, DATE(YEAR(B2),MONTH(B2),1)- (WEEKDAY(DATE(YEAR(B2),MONTH(B2),1))-1) +{0;1;2;3;4;5}*7+{1,2,3,4,5,6,7}-1)

Потім натисніть комбінацію Ctrl + Shift + Enterщоб ввести цю формулу як формулу масиву. Усі виділені комірки мають бути заповнені датами місяця, вказаного в B2:

Універсальна календарна формула

Все, що залишилося, це відшліфувати зовнішній вигляд, додавши форматування та приховавши день у заголовку B2 та місяць і рік в решті клітинок за допомогою вікна Форматувати клітинки (Ctrl+1):

Універсальна календарна формула

Тепер, змінивши дату в клітинці B2, ми отримаємо правильний календар для будь-якого вибраного місяця будь-якого року відповідно до нашої формули. Майже вічний календар😉

  • Як підключити спливаючий календар до аркуша Excel
  • Швидке введення дати й часу за допомогою надбудови PLEX
  • Як Excel працює з датами та часом
  • Швидкий введення дати та часу без роздільників

 

залишити коментар