Нет календаря excel 2013

Для гарантии правильности ввода дат пользователями элемент управления Excel Календарь (Calendar) может упростить ситуацию как для вас, так и для пользователей, работающих с вашей электронной таблицей. При помощи этого трюка можно добавить элемент управления Календарь (Calendar) в любую рабочую книгу Excel.

Если дата введена неправильно, Excel не сможет ее распознать. Иногда это означает, что вы не можете выполнять вычисления с числами, выглядящими как даты, но датами не являющимися. Кроме того, это означает, что любые диаграммы или сводные таблицы, которые основываются на этих данных, будут неверными. Хотя решить эту проблему может весьма разностороннее средство проверки данных Excel, оно также далеко от совершенства.

При помощи этого трюка можно добавить элемент управления Календарь (Calendar) в любую рабочую книгу Excel. Для начала откройте рабочую книгу, куда собираетесь добавить календарь. Лучше использовать ваш файл Personal.xls, который можно открыть командой Файл → Открыть (File → Open). Если этот пункт меню недоступен, значит, у вас пока нет файла Personal.xls. Можно создать его, записав пустой макрос. Для этого выберите команду Разработчик → Начать запись (Developer → Record New Macro) и в поле Сохранить в (Store Macro In) выберите вариант Личная книга макросов (Personal Macro Workbook). Затем щелкните на кнопке ОК, выделите любую ячейку и остановите запись. Excel автоматически создаст файл Personal.xls.

Выберите команду Разработчик → Редактор Visual Basic (Developer → Visual Basic Editor) (сочетание клавиш Alt/Option+Fll) и в VBE выберите команду Insert → UserForm. Должна появиться панель инструментов Control. (Если панель не открылась, выберите команду View → Toolbox.) Правой кнопкой мыши щелкните панель инструментов Control и в контекстном меню выберите команду Additional Controls. Прокрутите список до флажка Элемент управления Календарь 10.0 (Calendar Control 10.0) (номер версии зависит от версии Excel). Установите этот флажок и щелкните на кнопке ОК. Щелкните календарь, который теперь представляет собой часть панели инструментов, а затем щелкните форму UserForm, которую добавили ранее. При помощи маркеров изменения размера формы UserForm и элемента управления Календарь (Calendar) отрегулируйте их размер.

Удостоверьтесь, что форма UserForm выделена, и выберите команду View → Properties Window (клавиша F4). В окне Properties выберите Caption и замените слово UserForml словом Calendar. Теперь выберите команду View → Code (клавиша F7) и в частном модуле введите код, приведенный в листинге 7.14.

//Листинг 7.14 Private Sub Calendar1_Click() ActiveCell = Calendar1.Value End Sub Private Sub UserForm_Activate() Me.Calendar1.Value = Date End Sub

Выберите команду Insert → Module и в общем модуле введите код из листинга 7.15.

Закройте окно, чтобы вернуться в Excel. Выберите команду Разработчик > Макрос → Макросы (Developer > Macro → Macros) (сочетание клавиш Alt+F8) и затем выберите ShowIt. Щелкните кнопку Параметры (Options) и назначьте макросу клавишное сочетание — все готово. Нажмите выбранное сочетание клавиш, раскроется календарь с выбранной сегодняшней датой. Щелкните любую дату, и она будет вставлена в активную ячейку.

Если вам часто приходится вводить даты в ячейки листа, то делать это вручную неудобно. Для ввода именно сегодняшней даты можно воспользоваться функцией СЕГОДНЯ (TODAY), сочетанием клавиш Ctrl+; или макросом, но если нужны разные даты из прошлого или будущего, то вбивать их руками долго.

К сожалению, в стандартном арсенале средств Excel нет встроенного выпадающего календаря (в отличие от Word), да еще и в последних версиях, начиная с Excel 2007, Microsoft зачем-то убрала из стандартного комплекта поставки библиотеку mscalc.osx, которая позволяла быстро создать пользовательскую форму с календарем.

Естественно, это «узкое место» не осталось без внимания опытных пользователей и экспертов Excel MVP, которые оперативно создали несколько интерактивных календарей на макросах для удобного ввода дат. Вот подборка неплохих, на мой взгляд, бесплатных вариантов:

Date Picker
Автор: Sam Radakovitz, руководитель команды программистов Excel в Microsoft
Цена: бесплатно
Сайт автора умер, ссылки не работают, но можно скачать заботливо сохраненную мной когда-то копию здесь.

Для тех, кто просто хочет скачать календарь в Excel на текущий год, на картинке ниже показан как он выглядит. Красным отмечены праздничные дни, розовым — выходные. Текущий день, также автоматически выделяется заливкой.

Добавил календарь на 2017 год с праздниками и выходными в соответствии с постановлением правительства.

Сейчас мы создадим автоматический календарь который пригодится не только на текущий год, но и на все последующие года. И для этого нам не понадобятся макросы и программирование. Все что я покажу — сделано с использованием стандартных возможностей Excel.

В ячейку A1 вбиваем следующую формулу: =»Календарь на » & ГОД(СЕГОДНЯ()) & » год». Функция СЕГОДНЯ() возвращает текущую дату (мы часто будем ей пользоваться). Соответственно связка функций ГОД(СЕГОДНЯ()) возвратит нам текущий год.

Теперь создадим заголовки месяцев. В ячейку где стоит Январь запишем следующую формулу =ДАТА(ГОД(СЕГОДНЯ());1;1). Эта функция возвращает первое января текущего года (01.01.2015 в моем случае). Применим к этой ячейке такой формат, чтобы отображалось только название месяца. Для этого откроем формат ячеек сочетанием клавиш Ctrl + 1 и выберем соответствующий формат (см. рисунок).

Для создания заголовков последующих месяцев будем использовать еще одну очень полезную функцию =ДАТАМЕС(B3;1). Эта функция возвращает дату отстоящую от указанной на заданное число месяцев (в нашем случае на один). Таким образом, у нас получается следующая картина (дополнительно я добавил немного форматирования):

Для автоматического проставления чисел в календаре мы будем использовать всего одну формулу — формулу массива. На вид звучит страшновато, но если разобраться — все легко и просто. Выделяем ячейки B5:H10 и вводим следующую формулу (не спешим жать Enter):
=ДАТА(ГОД(B3);МЕСЯЦ(B3);1-1)-(ДЕНЬНЕД(ДАТА(ГОД(B3);МЕСЯЦ(B3);1-1))-1)+<0:1:2:3:4:5:6>*7+

Вместо Enter нажимаем сочетание клавиш Ctrl+Shift+Enter, вставляя таким образом формула массива. В результате в выделенном диапазоне получаем числа указанного в ячейке B3 месяца.

Аналогичную операцию проводим с другими месяцами или просто копируем диапазон дат января в следующие месяца. Получаем следующую картину:

Форматируем

Отформатируем ячейки таким образом, чтобы они содержали только числа (а не полностью даты). Выделяем даты, открываем формат ячеек (Ctrl+1) и вводим вручную следующий формат:

Календарь принимает все более привычный вид.

Добавляем условного форматирования

Сейчас в январе календарь содержит даты 29, 30, 31 декабря, а также часть дат февраля. Давайте немного скроем эти числа. Для этого будем использовать условное форматирование. Выделяем ячейки B5:H10 и создаем правило условного форматирования. Форматироваться будут ячейки, для которых следующая формула будет являться ИСТИНОЙ:
=И(МЕСЯЦ(B5)<>1+3*(ЧАСТНОЕ(СТРОКА(B5)-5;9))+ЧАСТНОЕ(СТОЛБЕЦ(B5);9))

В качестве формата я выбрал серый текст шрифта и получил следующую картину:

Автоматически выделяем текущую дату в календаре

Для этого создаем еще одно правило условного форматирования. Ячейка будет форматироваться только в том случае, если ее значение будет равно текущей дате (=СЕГОДНЯ()):

Выделим выходные дни в календаре Excel

На этот раз обойдемся обычной заливкой ячеек. Выбирайте на свой вкус. У меня получилось так:

Добавляем праздничные дни

Создадим новый лист Excel (Праздники) и добавим на него умную таблицу со столбцом Праздничные дни. В этот столбец занесем все праздничные дни. Я это уже сделал, можете спокойно копировать и использовать.

Вернемся в наш календарь и создадим еще одно правило условного форматирования. Формула условного форматирования будет проверять является ли дата праздником. И в случае если формула вернет ИСТИНА ячейка будет форматироваться. Вот эта формула:
=НЕ(ЕОШИБКА(ПОИСКПОЗ(B5;ДВССЫЛ(«Праздники[Праздничные дни]»);0))). Стоит отметить, что при добавлении или изменении праздничных дней, календарь будет автоматически форматироваться.

Осталось скопировать ячейки B5:H10 в другие месяца и наш автоматический календарь готов и может служить нам не один год.

Изменение цветовой гаммы календаря Excel

Если при создании календаря использовать цвета темы, то потом их можно будет изменить одним простым движением. Просто сменив цвета темы на вкладке Разметка страницы. Выбирайте понравившийся.

В архив для скачивания помимо моего календаря, буду складывать календари других пользователей. Поблагодарить их можно ниже в комментариях. Если у вас также есть чем поделиться, укажите ссылку на свой вариант календаря в комментарии, я с удовольствием его добавлю.

Как сделать календарь в Excel

Календари — неотъемлемая часть нашего быта, без которого современному человеку не обойтись и хотя их очень много и они есть везде — и в телефонах и в компьютерах, иногда возникает необходимость в создании своего специализированного календаря. Наверное, лучше начать с более простых способов.

Создание календаря из шаблона

В Excel есть множество встроенных шаблонов, в том числе и для календарей. Это очень удобно, поскольку эти шаблоны очень разные и скорее всего, то, что вы собираетесь сделать, уже подготовлено другими людьми. Главное преимущество заготовок — их работоспособность. Они созданы с учетом всех правил и принципов Excel, их не придется перенастраивать, а значит, не придется вникать во все тонкости и сложности этого дела.

Шаг 1. Для начала запустите программу и откройте в меню «Файл».

Шаг 2. Перейдите в раздел «Создать». Теперь воспользуйтесь поиском или нажмите на ссылку «Календари», чтобы просмотреть все доступные варианты.

Как видите, в программе много разных встроенных календарей. Они скомпонованы по категориям, что облегчит поиск. Найдите подходящий шаблон. Не обращайте внимание на стиль и цветовое решение, все это можно будет с легкостью изменить. Ориентируйтесь на формат календаря и возможности, которые он предлагает.

Шаг 3. Щелкните по миниатюре понравившегося вам шаблона. Скачайте его, нажав на кнопку «Создать».

Шаг 4. Теперь выбранный вами шаблон откроется в новом окне.

Измените его по своему усмотрению, добавьте свои данные и др. Теперь это будет лично ваш календарь с дополнительными возможностями.

Важно! Не забудьте сохранять свою таблицу каждый раз, когда вы вносите в нее какие-либо изменения.

Есть смысл загрузить этот документ на Google Docs. Это облачное хранилище файлов любого типа со встроенным пакетом программ, аналогичным Microsoft Office. Загрузив его на облако, вы сможете получить доступ к своему календарю в любое время с любого компьютера, редактировать его онлайн самостоятельно и вместе с другими людьми, но самый важный плюс — это автосохранение, любые действия с таблицей будут сохраняться системой.

Специализированный календарь для работы и дежурств

Создание нового календаря каждый месяц — пустая трата времени, но многие люди делают это, так как думают, что им придется перестраивать его, чтобы получить правильные выходные и праздничные дни. Но на самом деле, с несколькими формулами, 2 условными правилами форматирования, 1 выпадающим списком и 5 строками кода VBA, вы можете создать автоматический календарь, который не придется менять.

Шаг 1. Создания списка месяцев. Начнем с написания имени сотрудников в столбце A.

Перед тем как переходить к следующему этапу убедитесь, что на вашей панели инструментов есть раздел «Разработчика». Если нет, добавьте его:

    Перейдите в меню «Файл»>«Параметры».

Шаг 2. Теперь выберите «Разработчик»> «Вставка»> «Поле со списком».

Шаг 3. Теперь нам нужно создать список месяцев в другом месте на нашем листе.

Шаг 4. Теперь подключите, ранее созданный элемент «Поле со списком» с этим списком месяцев:

    Выберите объект «Поле со списком».

Шаг 5. Поле со списком для каждого года.

Сделайте все точно так же, как и в предыдущем шаге, но вместо месяцев введите года, которые вам нужны. В разделе «Связь с ячейкой» укажите A2.

Шаг 6. Впишите первую дату посредством функции. Здесь мы собираемся повторно использовать элементы A1 (выбранный месяц) и A2 (выбранный год) и поместить их в функцию «DATE». Эта функция выглядит следующим образом: «=ДАТА(год; месяц; день)».

Итак, в качестве года указываем A2+2017 (A2 содержит цифру 1, чтобы получить 2018, нам нужно прибавить к ней 2017), а в качестве месяца — A1. Впишите получившуюся формулу в ячейку B6 «=ДАТА (A2+2017;A1;1).

Шаг 7. Растяните дату на нужное число столбцов.

Этот шаг очень прост. Мы просто должны добавить 1 к предыдущей ячейке, чтобы увеличить день на 1. В C6, напишите следующую формулу и скопируйте ее во все остальные ячейки. Формула «= B6+1».

Примечание! Чтобы растянуть формулу, а другие ячейки, схватите B6 за зеленый квадратик и буквально растяните его на нужное число ячеек.

Шаг 8. Измените формат даты.

Теперь мы сосредоточимся на формате даты. У нас уже есть год и месяц в верхнем левом углу, поэтому нам не нужна эта информация в ячейках. Можно изменить формат даты в строке 6, чтобы отображался только день. Мы хотим отобразить короткое имя дня, а также цифру.

    Выберите все даты.

Шаг 9. Теперь вам остается только отформатировать таблицу по своему усмотрению, изменить цвет фона и шрифты.

Читайте интересную информацию из нашей новой статьи — «Как написать формулу в Excel? Обучение азам работы в Excel».

Видео — Как сделать календарь в Excel самостоятельно

Понравилась статья?
Сохраните, чтобы не потерять!

Вставка календаря в excel

Выпадающий календарь для ввода дат

Наша задача — добавить в книгу Excel пользовательскую форму (окно) с автоматическим календарем. Вот такое:

Окошко будет появляться при нажатии сочетания клавиш и после выбора в нем нужной даты — она попадает в текущую ячейку листа. Просто и красиво!

Откройте редактор Visual Basic через меню Сервис — Макрос — Редактор Visual Basic (Tools — Macro — Visual Basic Editor).

Создайте в нем новую пустую пользовательску форму, выбрав в меню Insert — User form .

Автоматически должна появиться панель Toolbox :

Если не появилась — жмите в меню View — Toolbox .

На этой панели представлены различные управляющие элементы окон: кнопки, списки, счетчики и т.д. Но нам нужен элемент (календарь), которого пока на панели не видно. Чтобы добавить его, щелкните по серому фону панели правой кнопкой мыши и выберите Additional Controls . Появится вот такое окно:

В нем надо найти и отметить Элемент управления Календарь 11.0 (Calendar Control 11.0). Версии могут отличаться (11.0, 10.0 и т.д.) в зависимости от версии Microsoft Office, это несущественно. После нажатия на ОК на панели появится новая кнопка — Calendar :

Щелкните по ней, а затем нарисуйте календарь на поле формы, удерживая нажатой левую кнопку мыши:

При желании подправьте размеры формы и календаря и введите текст заголовка окна в панели свойств слева.

Теперь переключитесь в режим ввода программного кода созданной формы (меню View — Code ) и скопируйте туда этот текст:

Private Sub Calendar1_Click()
ActiveCell = Calendar1.Value
ActiveCell.NumberFormat=»dd/mm/yy»
End Sub

Private Sub UserForm_Activate()
Me.Calendar1.Value = Date
End Sub

Теперь надо заставить Excel показывать нам созданную форму, когда мы этого захотим. Для этого вставьте новый модуль ( Insert — Module ) и скопируйте туда этот текст:

Sub ShowCalendar()
UserForm1.Show
End Sub

Осталось закрыть редактор Visual Basic и, вернувшись в Excel, назначить созданному макросу ShowCalendar любое подходящее сочетание клавиш (меню Сервис — Макрос — Макросы — кнопка Параметры ).

Если у Вас установлена не полная версия Office, то элемента управления Календарь может не оказаться в списке Additional Controls . Тогда скачайте этот файл (MSCal.ocx.zip) , поместите его в папку C:Windowssystem32 и зарегистрируйте новый элемент управления через меню Пуск — Выполнить , далее набрать Regsvr32 c:windowssystem32mscal.ocx и нажать ОК .

(За дополнение спасибо Vadim )

Если Вы хотите, чтобы календарь автоматически появлялся на экране, когда пользователь выделяет определенные ячейки (диапазон) на листе, то щелкните правой кнопкой мыши по ярлычку этого листа и выберите Исходный текст (View Source). В открывшееся окно редактора Visual Basic скопируйте следующий код:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Not Application.Intersect(Range(«A1:A20»), Target) Is Nothing Then
UserForm1.Show
End If
End Sub

Теперь при выделении любой ячейки из диапазона А1:А20 календарь будет автоматически отображаться на экране.

Содержание

  • Создание различных календарей
    • Способ 1: создание календаря на год
    • Способ 2: создание календаря с использованием формулы
    • Способ 3: использование шаблона
  • Вопросы и ответы

Календарь в Microsoft Excel

При создании таблиц с определенным типом данных иногда нужно применять календарь. Кроме того, некоторые пользователи просто хотят его создать, распечатать и использовать в бытовых целях. Программа Microsoft Office позволяет несколькими способами вставить календарь в таблицу или на лист. Давайте выясним, как это можно сделать.

Если инструкция по созданию календаря в Microsoft Excel вам покажется сложной, в качестве альтернативы рекомендуем рассмотреть веб-платформу Canva, доступную онлайн из любого браузера. Это сервис с огромной библиотекой редактируемых шаблонов различной направленности и стилистики, в числе которых есть и календари. Любой из них можно изменить на свое усмотрение либо создать таковой с нуля и затем сохранить на компьютер в предпочтительном формате или распечатать.

Создание различных календарей

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

Способ 1: создание календаря на год

Прежде всего, рассмотрим, как создать календарь за определенный год.

  1. Разрабатываем план, как он будет выглядеть, где будет размещаться, какую ориентацию иметь (альбомную или книжную), определяем, где будут написаны дни недели (сбоку или сверху) и решаем другие организационные вопросы.
  2. Для того, чтобы сделать календарь на один месяц выделяем область, состоящую из 6 ячеек в высоту и 7 ячеек в ширину, если вы решили писать дни недели сверху. Если вы будете их писать слева, то, соответственно, наоборот. Находясь во вкладке «Главная», кликаем на ленте по кнопке «Границы», расположенной в блоке инструментов «Шрифт». В появившемся списке выбираем пункт «Все границы».
  3. Ограничивание ячеек в Microsoft Excel

  4. Выравниваем ширину и высоту ячеек, чтобы они приняли квадратную форму. Для того, чтобы установить высоту строки кликаем на клавиатуре сочетание клавиш Ctrl+A. Таким образом, выделяется весь лист. Затем вызываем контекстное меню кликом левой кнопки мыши. Выбираем пункт «Высота строки».
    Переход к установки высоты строки в Microsoft Excel

    Открывается окно, в котором нужно установить требуемую высоту строки. Ели вы впервые делаете подобную операцию и не знаете, какой размер установить, то ставьте 18. Потом жмите на кнопку «OK».

    Установка высоты строки в Microsoft Excel

    Теперь нужно установить ширину. Кликаем по панели, на которой указаны наименования столбцов буквами латинского алфавита. В появившемся меню выбираем пункт «Ширина столбцов».

    Переход к установки ширины столбца в Microsoft Excel

    В открывшемся окне установите нужный размер. Если не знаете, какой размер установить, можете поставить цифру 3. Жмите на кнопку «OK».

    Установка ширины столбца в Microsoft Excel

    После этого, ячейки на листе приобретут квадратную форму.

  5. Теперь над расчерченным шаблоном нам нужно зарезервировать место для названия месяца. Выделяем ячейки, находящиеся выше строки первого элемента для календаря. Во вкладке «Главная» в блоке инструментов «Выравнивание» жмем на кнопку «Объединить и поместить в центре».
  6. Объединение ячеек в Microsoft Excel

  7. Прописываем дни недели в первом ряду элемента календаря. Это можно сделать при помощи автозаполнения. Вы также можете на свое усмотрение отформатировать ячейки этой небольшой таблицы, чтобы потом не пришлось форматировать каждый месяц в отдельности. Например, можно столбец, предназначенный для воскресных дней залить красным цветом, а текст строки, в которой находятся наименования дней недели, сделать полужирным.
  8. Форматирование ячеек в Microsoft Excel

    Lumpics.ru

  9. Копируем элементы календаря ещё для двух месяцев. При этом не забываем, чтобы в область копирования также входила объединенная ячейка над элементами. Вставляем их в один ряд так, чтобы между элементами была дистанция в одну ячейку.
  10. Элементы календаря скопированы в Microsoft Excel

  11. Теперь выделяем все эти три элемента, и копируем их вниз ещё в три ряда. Таким образом, должно получиться в общей сложности 12 элементов для каждого месяца. Дистанцию между рядами делайте две ячейки (если используете книжную ориентацию) или одну (при использовании альбомной ориентации).
  12. Крпирование ячеек в Microsoft Excel

  13. Затем в объединенной ячейке пишем название месяца над шаблоном первого элемента календаря – «Январь». После этого, прописываем для каждого последующего элемента своё наименование месяца.
  14. Установка наименования месяцев в Microsoft Excel

  15. На заключительном этапе проставляем в ячейки даты. При этом, можно значительно сократить время, воспользовавшись функцией автозаполнения, изучению которой посвящен отдельный урок.

Выставление дат в Microsoft Excel

После этого, можно считать, что календарь готов, хотя вы можете дополнительно отформатировать его на своё усмотрение.

Урок: Как сделать автозаполнение в Excel

Способ 2: создание календаря с использованием формулы

Но, все-таки у предыдущего способа создания есть один весомый недостаток: его каждый год придется делать заново. В то же время, существует способ вставить календарь в Excel с помощью формулы. Он будет каждый год сам обновляться. Посмотрим, как это можно сделать.

  1. В левую верхнюю ячейку листа вставляем функцию:
    ="Календарь на " & ГОД(СЕГОДНЯ()) & " год"
    Таким образом, мы создаем заголовок календаря с текущим годом.
  2. Вставка формулы в Microsoft Excel

  3. Чертим шаблоны для элементов календаря помесячно, так же как мы это делали в предыдущем способе с попутным изменением величины ячеек. Можно сразу провести форматирование этих элементов: заливка, шрифт и т.д.
  4. Создание макета календаря в Microsoft Excel

  5. В место, где должно отображаться названия месяца «Январь», вставляем следующую формулу:
    =ДАТА(ГОД(СЕГОДНЯ());1;1)
    Вставка формулы для января

    Но, как видим, в том месте, где должно отобразиться просто название месяца установилась дата. Для того, чтобы привести формат ячейки к нужному виду, кликаем по ней правой кнопкой мыши. В контекстном меню выбираем пункт «Формат ячеек…».

    Переход в формат ячеек в Microsoft Excel

    В открывшемся окне формата ячеек переходим во вкладку «Число» (если окно открылось в другой вкладке). В блоке «Числовые форматы» выделяем пункт «Дата». В блоке «Тип» выбираем значение «Март». Не беспокойтесь, это не значит, что в ячейке будет слово «Март», так как это всего лишь пример. Жмем на кнопку «OK».

  6. Окно формата ячеек в Microsoft Excel

  7. Как видим, наименование в шапке элемента календаря изменилось на «Январь». В шапку следующего элемента вставляем другую формулу:
    =ДАТАМЕС(B4;1)
    В нашем случае, B4 – это адрес ячейки с наименованием «Январь». Но в каждом конкретном случае координаты могут быть другими. Для следующего элемента уже ссылаемся не на «Январь», а на «Февраль», и т.д. Форматируем ячейки так же, как это было в предыдущем случае. Теперь мы имеем наименования месяцев во всех элементах календаря.
  8. Добавление наименований месяцев в Microsoft Excel

  9. Нам следует заполнить поле для дат. Выделяем в элементе календаря за январь все ячейки, предназначенные для внесения дат. В Строку формул вбиваем следующее выражение:
    =ДАТА(ГОД(D4);МЕСЯЦ(D4);1-1)-(ДЕНЬНЕД(ДАТА(ГОД(D4);МЕСЯЦ(D4);1-1))-1)+{0:1:2:3:4:5:6}*7+{1;2;3;4;5;6;7}
    Жмем сочетание клавиш на клавиатуре Ctrl+Shift+Enter.
  10. Заполнение пространства дат в Microsoft Excel

  11. Но, как видим, поля заполнились непонятными числами. Для того, чтобы они приняли нужный нам вид. Форматируем их под дату, как это уже делали ранее. Но теперь в блоке «Числовые форматы» выбираем значение «Все форматы». В блоке «Тип» формат придется ввести вручную. Там ставим просто букву «Д». Жмем на кнопку «OK».
  12. Форматирование под дату в Microsoft Excel

  13. Вбиваем аналогичные формулы в элементы календаря за другие месяцы. Только теперь вместо адреса ячейки D4 в формуле нужно будет проставить координаты с наименованием ячейки соответствующего месяца. Затем, выполняем форматирование тем же способом, о котором шла речь выше.
  14. Выставление дат во всех месяцах в Microsoft Excel

  15. Как видим, расположение дат в календаре все ещё не корректно. В одном месяце должно быть от 28 до 31 дня (в зависимости от месяца). У нас же в каждом элементе присутствуют также числа из предыдущего и последующего месяца. Их нужно убрать. Применим для этих целей условное форматирование.

    Производим в блоке календаря за январь выделение ячеек, в которых содержатся числа. Кликаем по значку «Условное форматирование», размещенному на ленте во вкладке «Главная» в блоке инструментов «Стили». В появившемся перечне выбираем значение «Создать правило».

    Переход к созданию правила условного форматирования в Microsoft Excel

    Открывается окно создания правила условного форматирования. Выбираем тип «Использовать формулу для определения форматируемых ячеек». В соответствующее поле вставляем формулу:
    =И(МЕСЯЦ(D6)1+3*(ЧАСТНОЕ(СТРОКА(D6)-5;9))+ЧАСТНОЕ(СТОЛБЕЦ(D6);9))
    D6 – это первая ячейка выделяемого массива, который содержит даты. В каждом конкретном случае её адрес может отличаться. Затем кликаем по кнопке «Формат».

    Создание правила в Microsoft Excel

    В открывшемся окне переходим во вкладку «Шрифт». В блоке «Цвет» выбираем белый или цвет фона, если у вас установлен цветной фон календаря. Жмем на кнопку «OK».

    Установка цвета шрифта в Microsoft Excel

    Вернувшись в окно создания правила, жмем на кнопку «OK».

  16. Создание правила в программе Microsoft Excel

  17. Используя аналогичный способ, проводим условное форматирование относительно других элементов календаря. Только вместо ячейки D6 в формуле нужно будет указывать адрес первой ячейки диапазона в соответствующем элементе.
  18. Скрытие лишних дат в Microsoft Excel

  19. Как видим, числа, которые не входят в соответствующий месяц, слились с фоном. Но, кроме того, с ним слились и выходные дни. Это было сделано специально, так как ячейки, где содержаться числа выходных дней мы зальём красным цветом. Выделяем в январском блоке области, числа в которых выпадают на субботу и воскресение. При этом, исключаем те диапазоны, данные в которых были специально скрыты путем форматирования, так как они относятся к другому месяцу. На ленте во вкладке «Главная» в блоке инструментов «Шрифт» кликаем по значку «Цвет заливки» и выбираем красный цвет.
    Заливка ячееек в Microsoft Excel

    Точно такую же операцию проделываем и с другими элементами календаря.

  20. Заливка цветом всех ячеек в Microsoft Excel

  21. Произведем выделение текущей даты в календаре. Для этого, нам нужно будет опять произвести условное форматирование всех элементов таблицы. На этот раз выбираем тип правила «Форматировать только ячейки, которые содержат». В качестве условия устанавливаем, чтобы значение ячейки было равно текущему дню. Для этого вбиваем в соответствующее поля формулу (показано на иллюстрации ниже).
    =СЕГОДНЯ()
    В формате заливки выбираем любой цвет, отличающийся от общего фона, например зеленый. Жмем на кнопку «OK».
    Установка формата ячеек в Microsoft Excel

    После этого, ячейка, соответствующая текущему числу, будет иметь зеленый цвет.

  22. Установим наименование «Календарь на 2017 год» посередине страницы. Для этого выделяем всю строку, где содержится это выражение. Жмем на кнопку «Объединить и поместить в центре» на ленте. Это название для общей презентабельности можно дополнительно отформатировать различными способами.

Объединение ячеек в программе Microsoft Excel

В целом работа над созданием «вечного» календаря завершена, хотя вы можете ещё долго проводить над ним различные косметические работы, редактируя внешний вид на свой вкус. Кроме того, отдельно можно будет выделить, например, праздничные дни.

Вечный календарь готов в Microsoft Excel

Урок: Условное форматирование в Excel

Способ 3: использование шаблона

Те пользователи, которые ещё в недостаточной мере владеют Экселем или просто не хотят тратить время на создание уникального календаря, могут воспользоваться готовым шаблоном, закачанным из интернета. Таких шаблонов в сети довольно много, причем велико не только количество, но и разнообразие. Найти их можно, просто вбив соответствующий запрос в любую поисковую систему. Например, можно задать следующий запрос: «календарь шаблон Excel».

Примечание: В последних версиях пакета Microsoft Office огромный выбор шаблонов (в том числе и календарей) интегрирован в состав программных продуктов. Все они отображаются непосредственно при открытии программы (не конкретного документа) и, для большего удобства пользователя, разделены на тематические категории. Именно здесь можно выбрать подходящий шаблон, а если такового не найдется, его всегда можно скачать с официального сайта Office.com.

По сути, такой шаблон — уже готовый календарь, в котором вам только останется занести праздничные даты, дни рождения или другие важные события. Например, таким календарем является шаблон, который представлен на изображении ниже. Он представляет собой полностью готовую к использованию таблицу.

Шаблон календаря в Microsoft Excel

Вы можете в нем с помощью кнопки заливки во вкладке «Главная» закрасить различными цветами ячейки, в которых содержатся даты, в зависимости от их важности. Собственно, на этом вся работа с подобным календарем может считаться оконченной и им можно начинать пользоваться.

Выделение дат в Microsoft Excel

Мы разобрались, что календарь в Экселе можно сделать двумя основными способами. Первый из них предполагает выполнение практически всех действий вручную. Кроме того, календарь, сделанный этим способом, придется каждый год обновлять. Второй способ основан на применении формул. Он позволяет создать календарь, который будет обновляться сам. Но, для применения данного способа на практике нужно иметь больший багаж знаний, чем при использовании первого варианта. Особенно важны будут знания в сфере применения такого инструмента, как условное форматирование. Если же ваши знания в Excel минимальны, то можно воспользоваться готовым шаблоном, скачанным из интернета.

@sdinva7

Hi,

If you scroll down the webpage I mentioned in the previous link, you will find this note:

Excel Date Picker.png

The built-in DateTime picker in Excel only exists in the 32bit version of Excel.

If you have the 64bit version of Excel, you may try some third-party tools mentioned on the same page.

The good news is that the Excel team is currently working to add DateTime picker officially in all versions of Excel by this source.

Regards,

Haytham

Если вам приходится часто вводить даты в ячейки электронной таблицы, делать это вручную неудобно. Чтобы точно ввести сегодняшнюю дату, вы можете использовать функцию СЕГОДНЯ, комбинацию клавиш Ctrl +; или макрос, но если вам нужны даты, отличные от прошлого или будущего, ведите их подолгу руками. 

К сожалению, в стандартном арсенале инструментов Excel нет встроенного выпадающего календаря (в отличие от Word) и даже в последних версиях, начиная с Excel 2007, Microsoft почему-то убрала библиотеку mscalc.osx из стандартного комплекта поставки , что позволило быстро создать произвольную форму с помощью календаря.

Конечно, это «узкое место» не осталось незамеченным опытными пользователями и экспертами по Excel MVP, которые быстро создали несколько интерактивных календарей на макросах для удобного ввода даты. Вот подборка хороших, на мой взгляд, бесплатных вариантов:

как создать выпадающий календарь в ячейке Excel Средство выбора даты Windows
Автор: Рон де Брюин
Цена: бесплатно
Связь

  • Устанавливается как надстройка (есть версии для старого Excel 200-2003 и нового Excel 2007-2010, и отдельно для Excel 2013. 
  • Вызывается через контекстное меню ячейки (правой кнопкой мыши по ячейке — Селектор даты). 
  • Позволяет вводить дату в нескольких форматах, вплоть до номера недели (по разным стандартам). 
  • Автоматически подстраивается под российский стандарт недели (с понедельника).
как создать выпадающий календарь в ячейке Excel Средство выбора даты в Excel
Автор: Джим Коун
Цена: бесплатно
Связь

  • Макросы (не надстройка!) С VBA с открытым исходным кодом: вы можете видеть, как все работает, и модернизировать «под себя». Но вы должны скопировать код в каждый используемый файл и вызвать его нажатием кнопки или сочетания клавиш, т.е универсальность хромает. 
  • Удобная раздвижная система на годы и месяцы. 
  • Знает русскую неделю (с понедельника. 
  • Нет никаких настроек.
как создать выпадающий календарь в ячейке Excel Мини-календарь и выбор даты
Автор: VERTEX
Цена: бесплатно.
Ссылка в магазине приложений Office

  • Работает только в Excel 2013, добавляется через Office App Store в Insert — Office Apps Store). 
  • Вставляет на лист как постоянное изображение и добавляет выбранную дату в любую ранее выбранную ячейку. 
  • В нем можно менять стандарты недели, отображать номера недель, вводить не только дату, но и время. 
  • вы можете установить темы. 
  • Нет кнопки для перехода к текущему дню.
как создать выпадающий календарь в ячейке Excel Выбор даты
Сэм Радакович, руководитель группы программирования Excel в Microsoft
Цена: бесплатно 
Сайт автора мертв, ссылки не работают, но вы можете скачать копию, которую я бережно сохранил здесь.

  • Устанавливается как надстройка. 
  • Он вызывается правой кнопкой мыши на ячейке — выберите из календаря или с помощью удобного всплывающего значка календаря справа от ячейки с датой. 
  • Приятный дизайн, показывающий количество дней до выбранной даты от текущей. 
  • Использует стандарт недели США (отображается неделя с воскресенья). 
  • Нет никаких настроек. 

P.S.

Установка дополнений:

  • в Excel 2003 и более ранних версиях — меню «Инструменты» — «Надстройки» — «Обзор
  • в Excel 2007 и более поздних версиях — Файл — Параметры — Надстройки — Перейти — Обзор

Ссылки по теме

  • Всплывающий календарь из надстройки PLEX
  • Автоматическая вставка даты при изменении ячейки

Каждый раз, когда вы вводите дату в ячейку, возникают вопросы: следует ли печатать ДД-ММ-ГГГГ или в другом порядке? Использовать «-» или «/» в качестве разделителя? Будет ли Excel распознавать введенное значение как дату и отображать его в правильном формате? Здесь пригодится всплывающий или раскрывающийся календарь. Он незаменим для работы с личными и рабочими списками дел, графиками и планами, графиками проектов и финансовыми отчетами в Excel.

Popup Calendar — надежный и проверенный инструмент для выбора даты, которому доверяют более 30 000 пользователей Excel:

  • Интуитивно понятно: выберите ячейки — введите дату
  • Исчезает рядом с ячейкой, отображает номера недель, дни недели, текущую дату
  • Заполняйте столбцы, строки и любой диапазон датами за секунды
  • Множество предопределенных параметров формата даты
  • Работает в 64 и 32-битных версиях Excel

Язык видео: английский. Субтитры: русские, английские. (Примечание. Видео могут не отражать последние обновления. Используйте инструкции ниже.)

Добавить «Всплывающий календарь» в Excel 2016, 2013, 2010, 2007

Подходит для: Microsoft Excel 2016 — 2007, Office 365 для настольных ПК (32- и 64-разрядных версий).

Загрузите надстройку XLTools

как создать выпадающий календарь в ячейке Excel

Как работать с надстройкой:

  • Как вставить или изменить дату в ячейке с помощью всплывающего календаря
  • Как вставить текущую дату из календаря в ячейку
  • Как заполнить датами весь несмежный столбец, строку или диапазоны
  • Как заполнить диапазон последовательными датами
  • Как одновременно вставить дату и время в одну ячейку
  • Как вставить в ячейку только время (без даты
  • Как изменить формат даты по умолчанию для всплывающего окна календаря
  • Как изменить сочетание клавиш для всплывающего окна календаря
  • Как добавить / удалить значок всплывающего календаря
  • Как добавить / удалить «Всплывающий календарь» из контекстного меню
  • Как встроить всплывающий календарь в книгу Excel

Предупреждение: отменить последнее действие (UNDO) невозможно. Мы рекомендуем вам сохранить резервную копию ваших файлов или использовать XLTools Version Control для отслеживания изменений.

Как вставить или изменить дату в ячейке с помощью всплывающего календаря

  1. Выберите ячейку.
  2. В группе «Дата / время» нажмите кнопку «Вставить дату»> Календарь отобразится рядом с ячейкой.
    Или: щелкнув правой кнопкой мыши, выберите «Вставить дату».
    Или: используйте сочетание клавиш Ctrl +; (точка с запятой в английской раскладке).
  3. Выберите желаемую дату в календаре> Готово.
    Обратите внимание на формат: это то, что вы хотите? Вы можете изменить формат даты по умолчанию.
  4. Чтобы изменить значение даты, щелкните значок календаря справа от ячейки> Изменить дату.

Всплывающий календарь запоминает последнюю дату, чтобы упростить ввод следующей даты.

Предупреждение: после ввода даты ячейке автоматически присваивается формат числа / даты. Если позже вы удалите значение из ячейки, сама ячейка сохранит свой формат даты, а значок календаря для этой пустой ячейки останется доступным. Чтобы удалить значок, измените формат ячейки на Общий.

как создать выпадающий календарь в ячейке Excel

Как вставить текущую дату из календаря в ячейку

  1. Выберите ячейку, в которую вы хотите вставить текущую дату.
  2. В группе «Дата/время» нажмите кнопку «Вставить дату»> Календарь появится рядом с ячейкой.
    Или: щелкнув правой кнопкой мыши, выберите «Вставить дату».
    Или: используйте сочетание клавиш Ctrl +; (точка с запятой в английской раскладке).
  3. Щелкните Сегодня в нижней части календаря> Готово.

Как заполнить датами весь несмежный столбец, строку или диапазоны

С помощью всплывающего календаря вы можете заполнить весь диапазон значениями дат (до 4000 ячеек). Даты могут быть вставлены в столбцы таблицы, строки, объединенные ячейки или любой произвольный диапазон, как отдельная ячейка: 

  1. Выберите интервал.
  2. В группе «Дата / время» нажмите кнопку «Вставить дату»> появится всплывающий календарь.
    Или: щелкнув правой кнопкой мыши, выберите «Вставить дату».
    Или: используйте сочетание клавиш Ctrl +; (точка с запятой в английской раскладке).
  3. Выберите дату> Готово. Весь диапазон заполняется значением выбранной даты.
    Совет: узнайте, как заполнять ячейки последовательными датами.
  4. Чтобы изменить значение даты, щелкните значок календаря справа от ячейки> Изменить дату.

Предупреждение: после ввода даты ячейкам автоматически присваивается формат числа / даты. Если позже вы удалите значения из ячеек, сами ячейки сохранят свой формат даты, и значок календаря для этих пустых ячеек останется доступным. Чтобы удалить значок, измените формат ячейки на Общий.

как создать выпадающий календарь в ячейке Excel

Как заполнить диапазон последовательными датами

С помощью надстройки Popup Calendar вы можете быстро заполнить диапазон последовательными датами (дни в порядке):

  1. Вкладка XLTools> кнопка «Настройки»> вкладка «Дата / время»> установите флажок «Включить автоматическое увеличение даты при заполнении диапазона ячеек»> «ОК.
  2. Выберите интервал.
  3. В группе «Дата / время» нажмите кнопку «Вставить дату»> рядом с ячейкой появится всплывающий календарь.
    Или: щелкнув правой кнопкой мыши, выберите «Вставить дату».
    Или: используйте сочетание клавиш Ctrl +; (точка с запятой в английской раскладке).
  4. Выберите Дата начала> Готово, весь диапазон будет автоматически заполнен последовательными значениями дат с шагом в 1 день.

как создать выпадающий календарь в ячейке Excel

Как одновременно вставить дату и время в одну ячейку

  1. Выберите ячейку.
  2. В группе «Дата / время» нажмите кнопку «Вставить дату и время»> рядом с ячейкой появится всплывающий календарь с часами.
    Или: щелкнув правой кнопкой мыши, выберите «Вставить дату и время».
    Или: используйте сочетание клавиш: нажмите Ctrl +; (точка с запятой в английской раскладке), затем отпустите клавиши и нажмите Ctrl + Shift +; (точка с запятой в английской раскладке).
  3. Установите время с помощью колеса прокрутки мыши или стрелок вверх / вниз> Выберите дату во всплывающем календаре> Готово.
    Обратите внимание на формат: это то, что вы хотите? Вы можете установить другой формат по умолчанию для календаря и всплывающих часов.
  4. Чтобы изменить значение, щелкните значок справа от ячейки> Изменить дату и время.

Внимание: после ввода даты и времени ячейке автоматически присваивается формат числа / даты. Если позже вы удалите значение из ячейки, сама ячейка сохранит свой формат даты, а значок календаря с часами для этой пустой ячейки останется доступным. Чтобы удалить значок, измените формат ячейки на Общий.

как создать выпадающий календарь в ячейке Excel

Как вставить в ячейку только время (без даты

Используйте надстройку Pop-up Clock для установки и вставки времени в ячейки и диапазоны:

  1. Выберите ячейку или диапазон.
  2. В группе «Дата / время» нажмите кнопку «Вставить время»> рядом с ячейкой появятся всплывающие часы.
    Или: щелкните правой кнопкой мыши, чтобы выбрать пункт «Вставить сейчас».
    Или: используйте сочетание клавиш Ctrl + Shift +; (точка с запятой в английской раскладке).
  3. Установите время с помощью колесика мыши или стрелок вверх / вниз> нажмите Enter> Готово.

как создать выпадающий календарь в ячейке Excel

Как изменить формат даты по умолчанию для всплывающего окна календаря

Чтобы изменить формат всплывающего календаря по умолчанию»:

  1. Нажмите кнопку «Настройки» на панели инструментов XLTools> вкладка «Дата / время.
  2. Установите флажок «По умолчанию использовать формат даты и времени, указанный ниже».
    Примечание. Если вы снимите флажок, всплывающий календарь будет использовать формат, установленный в настройках системы.
  3. Выберите подходящий формат, например вашу страну или язык.
    Или: установите «Нестандартный размер».
  4. Щелкните OK> Готово.

как создать выпадающий календарь в ячейке Excel

Вы можете обнаружить, что некоторые ячейки не соответствуют указанному календарному формату. Это означает, что ячейкам ранее был назначен другой формат даты. В этом случае измените формат ячейки:

  1. Выберите «Ячейки»> щелкните правой кнопкой мыши и выберите «Форматировать ячейки».
  2. Вкладка «Число»> Формат даты> Установите желаемый формат даты.

Первоначально во всплывающем календаре используются системные настройки формата даты и времени по умолчанию. Вы можете полностью изменить настройки системы. Обратите внимание, что это изменит настройки всех учетных записей на компьютере:

  1. Панель управления> Часы, язык и регион> Изменить формат даты.
  2. Вкладка «Форматы»> Установите форматы даты и времени, первый день недели.
  3. Вкладка Местоположение> Укажите страну вашего местоположения.
  4. Вкладка «Дополнительно»> «Изменить язык системы»> «Перезагрузить компьютер.

Для вашего удобства сочетание клавиш по умолчанию для всплывающего календаря — Ctrl +; (точка с запятой на английском языке) — это та же комбинация, которая используется Excel для вставки текущей даты. Вы можете в любой момент изменить сочетания клавиш для всплывающих часов:

Вкладка XLTools> кнопка Настройки> вкладка Сочетания клавиш> Укажите другой ярлык> ОК.

как создать выпадающий календарь в ячейке Excel

Как добавить/удалить значок всплывающего календаря

Если ячейка отформатирована как Дата, справа от выбранной ячейки появляется значок календаря (значок). При нажатии на значок открывается окно выбора даты.

  • Чтобы отключить отображение значка календаря:
  1. Нажмите кнопку «Настройки» на панели инструментов XLTools> вкладка «Дата / время.
  2. Снимите флажок «Показывать всплывающие значки календаря и часов»> ОК.
  3. Готовый! Значки исчезнут, а календарь и часы по-прежнему будут доступны для использования. Иконки можно вернуть в любой момент.

как создать выпадающий календарь в ячейке Excel

  • Чтобы настроить внешний вид значка рядом с пустыми ячейками, столбцами, строками или произвольным диапазоном:
  1. Выберите пустую ячейку или диапазон.
  2. Вкладка Главная> Группа номеров> Дата> ОК. Затем ячейкам будет присвоен формат даты.
    Или: введите любую дату с помощью всплывающего календаря> нажмите кнопку «Удалить». Это приведет к непосредственному удалению значений и присвоению выбранным ячейкам формата даты.
  3. Готовый! Теперь, если вы выберете ячейку в этом диапазоне, рядом с ней появится значок календаря.
  • Чтобы удалить значок календаря из пустых ячеек:
    Если ячейка пуста, но значок все еще отображается, это означает, что ячейке назначен формат даты или времени. Чтобы удалить значок из пустых ячеек, измените их формат на Общий:
  1. Выберите пустую ячейку или диапазон.
  2. Вкладка «Главная»> «Редактировать группу»> «Очистить форматы.
    Или: вкладка «Главная»> «Номера групп»> «Общие» в раскрывающемся списке.
    Или: щелкните правой кнопкой мыши «Формат ячеек»> вкладку «Число»> выберите «Общий» формат> ОК.
  1. Нажмите кнопку «Настройки» на панели инструментов XLTools> вкладка «Дата / время.
  2. Установите или снимите отметку с соответствующих опций:
    • «Добавить пункт« Вставить дату »в контекстное меню»
    • «Добавить пункт« Вставить сейчас »в контекстное меню»
    • «Добавить в контекстное меню пункт« Вставить дату и время»
  3. Щелкните OK> Готово.

как создать выпадающий календарь в ячейке Excel

Как встроить всплывающий календарь в книгу Excel

Надстройку XLTools Calendar Popup нельзя встроить в книгу. Всплывающее окно календаря будет видно и доступно только пользователям, которые установили надстройку XLTools.

Если вам нужно отправить свою книгу другим пользователям, попробуйте наше онлайн-дополнение Embedded Calendar — Calendar XLTools.net. Установка на ваш компьютер не требуется: отправьте файл своим коллегам, и они тоже смогут пользоваться календарем. Это веб-приложение полезно для отправки программ, расписаний, планов и т.д.

Содержание

    • 0.1 P.S.
    • 0.2 Ссылки по теме
  • 1 Добавить «Всплывающий календарь» в Excel 2016, 2013, 2010, 2007
  • 2 Как работать с надстройкой:
  • 3 Как задать формат даты в Excel 2007/2010?
  • 4 Как задать свой собственный формат даты? Как преобразовать дату в год, месяц либо день недели?
  • 5 Как установить систему дат 1904?
  • 6 Как вводить дату в ячейку?
  • 7 Как в Excel вводить даты при помощи надстройки?
  • 8 Как вставить в ячейку статическую, фиксированную, не обновляемую дату?
  • 9 Как вставить в ячейку текущую автоматически обновляемую дату?
    • 9.1 Другие материалы по теме:
    • 9.2 Интерактивный календарь в Excel
    • 9.3 Создаем таблицу с событиями
    • 9.4 Настраиваем календарь
    • 9.5 Задаем имя диапазону дат в календаре
    • 9.6 Определяем ячейку с выделенной датой
    • 9.7 Добавляем макрос на событие Worksheet_selectionchange()
    • 9.8 Настраиваем формулы для отображения деталей при выборе даты
    • 9.9 Добавление анонса
    • 9.10 Настраиваем условное форматирование для выделенной даты
    • 9.11 Форматируем

Если вам часто приходится вводить даты в ячейки листа, то делать это вручную неудобно. Для ввода именно сегодняшней даты можно воспользоваться функцией СЕГОДНЯ (TODAY), сочетанием клавиш Ctrl+; или макросом, но если нужны разные даты из прошлого или будущего, то вбивать их руками долго. 

К сожалению, в стандартном арсенале средств Excel нет встроенного выпадающего календаря (в отличие от Word), да еще и в последних версиях, начиная с Excel 2007, Microsoft зачем-то убрала из стандартного комплекта поставки библиотеку mscalc.osx, которая позволяла быстро создать пользовательскую форму с календарем.

Естественно, это «узкое место» не осталось без внимания опытных пользователей и экспертов Excel MVP, которые оперативно создали несколько интерактивных календарей на макросах для удобного ввода дат. Вот подборка неплохих, на мой взгляд, бесплатных вариантов:

как сделать выпадающий календарь в ячейке excel Windows Date Picker
Автор: Ron de Bruin
Цена: бесплатно
Ссылка

  • Устанавливается как надстройка (есть версии для старых Excel 200-2003 и для новых Excel 2007-2010 и, отдельно, для Excel 2013. 
  • Вызывается через контекстное меню ячейки (правой кнопкой мыши по ячейке — Date Picker). 
  • Позволяет вставлять дату в нескольких форматах, вплоть до номера недели (по разным стандартам). 
  • Автоматически подстраивается под российский стандарт недели (с понедельника).
как сделать выпадающий календарь в ячейке excel Excel Date Picker
Автор: Jim Cone
Цена: бесплатно
Ссылка

  • Макрос (не надстройка!) с открытым кодом VBA — можно посмотреть как всё устроено и модернизировать «под себя». Но надо копировать код в каждый используемый файл и вызывать нажатием на кнопку или сочетанием клавиш, т.е. универсальность хромает. 
  • Удобная система прокрутки лет и месяцев. 
  • Российскую неделю (с понедельника) знает. 
  • Каких-либо настроек нет.
как сделать выпадающий календарь в ячейке excel Mini Calendar and Date Picker
Автор: VERTEX
Цена: бесплатно.
Ссылка в Office Apps Store

  • Работает только в Excel 2013, добавляется через магазин приложений Office App Store на вкладке Вставка — Приложения для Office (Insert — Office Apps Store)
  • Вставляется на лист как постоянный графический объект и добавляет выбранную дату в любую выделенную предварительно ячейку. 
  • Умеет менять стандарты недели, отображать номера недель, вводить не только дату, но и время. 
  • Есть возможность задавать темы оформления. 
  • Нет кнопки перехода к текущему дню.
как сделать выпадающий календарь в ячейке excel Date Picker
Автор: Sam Radakovitz, руководитель команды программистов Excel в Microsoft
Цена: бесплатно 
Сайт автора умер, ссылки не работают, но можно скачать заботливо сохраненную мной когда-то копию здесь.

  • Устанавливается как надстройка. 
  • Вызывается через правую кнопку мыши по ячейке — Pick from calendar или с помощью удобного всплывающего значка календарика справа от ячейки с датой. 
  • Красивый дизайн, отображение количества дней до выбранной даты от текущей. 
  • Использует USA-стандарт недели (отображает неделю с воскресенья). 
  • Настроек нет. 

P.S.

Установка надстроек:

  • в Excel 2003 и старше — меню Сервис — Надстройки — Обзор (Tools — Add-ins — Browse)
  • в Excel 2007 и новее — Файл — Параметры — Надстройки — Перейти — Обзор (File — Options — Add-ins — Go To — Browse)

Ссылки по теме

  • Всплывающий календарь из надстройки PLEX
  • Автоматический ввод даты при изменении ячейки

Каждый раз при вводе даты в ячейку возникают вопросы: печатать ДД-ММ-ГГГГ или в другом порядке? Использовать «-» или «/» в качестве разделителя? Распознает ли Excel введённое значение как дату и отобразит ли её в нужном формате? Именно в этих случаях пригодится всплывающий, или выпадающий, календарь. Он незаменим для работы с личными и рабочими списками дел, расписаниями и планами, графиками выполнения проектов и финансовыми отчётами в Excel.

«Всплывающий календарь» — это надёжный и проверенный инструмент выбора дат, которому доверяют 30 000+ пользователей Excel:

  • Интуитивен в использовании: выберите ячейки — вставьте дату
  • Выпадает рядом с ячейкой, отображает номера недель, дни недели, текущую дату
  • Заполняет датами столбцы, строки и любые диапазоны в секунды
  • Множество вариантов формата даты по умолчанию
  • Работает в 64- и 32-разрядных версиях Excel

Язык видео: английский. Субтитры: русский, английский. (Внимание: видео может не отражать последние обновления. Используйте инструкцию ниже.)

Добавить «Всплывающий календарь» в Excel 2016, 2013, 2010, 2007

Подходит для: Microsoft Excel 2016 – 2007, desktop Office 365 (32-бит и 64-бит).

Скачать надстройку XLTools

как сделать выпадающий календарь в ячейке excel

Как работать с надстройкой:

  • Как вставить или изменить дату в ячейке с помощью «Всплывающего календаря»
  • Как из календаря вставить текущую дату в ячейку
  • Как заполнить датами целый столбец, строку или несмежные диапазоны
  • Как заполнить диапазон последовательными датами
  • Как вставить сразу и дату и время в ячейку
  • Как вставить только время (без даты) в ячейку
  • Как изменить формат даты по умолчанию для «Всплывающего календаря»
  • Как изменить комбинацию горячих клавиш для «Всплывающего календаря»
  • Как добавить/удалить иконку «Всплывающего календаря»
  • Как добавить/удалить «Всплывающий календарь» из контекстного меню
  • Как встроить всплывающий календарь в книгу Excel

Внимание: отмена последнего действия (UNDO) невозможна. Рекомендуем сохранять резервную копию файлов или использовать «Контроль версий» XLTools для отслеживания изменений.

Как вставить или изменить дату в ячейке с помощью «Всплывающего календаря»

  1. Выберите ячейку.
  2. В группе Дата/Время нажмите на кнопку «Вставить дату» > Календарь всплывёт рядом с ячейкой.
    Или: по правому клику мыши выберите пункт «Вставить дату».
    Или: используйте сочетание клавиш Ctrl+; (точка с запятой на английской раскладке).
  3. Выберите нужную дату из календаря > Готово.
    Обратите внимание на формат: это то, что вам нужно? Вы можете изменить формат даты по умолчанию.
  4. Чтобы изменить значение даты, нажмите на иконку календаря справа от ячейки > Измените дату.

«Всплывающий календарь» запоминает последнюю использованную дату, чтобы вам было проще вводить следующую дату.

Внимание: после ввода даты, ячейке автоматически присваивается формат Число/Дата. Если вы позднее удалите значение из ячейки, сама ячейка сохранит свой формат Дата, а иконка календаря для этой пустой ячейки останется доступной. Чтобы убрать иконку, измените формат ячейки на Общий.

как сделать выпадающий календарь в ячейке excel

Как из календаря вставить текущую дату в ячейку

  1. Выберите ячейку, в которую нужно вставить текущую дату.
  2. В группе Дата/Время нажмите на кнопку «Вставить дату» > Календарь появится рядом с ячейкой.
    Или: по правому клику мыши выберите пункт «Вставить дату».
    Или: используйте сочетание клавиш Ctrl+; (точка с запятой на английской раскладке).
  3. Нажмите по надписи «Сегодня» в нижней части календаря > Готово.

Как заполнить датами целый столбец, строку или несмежные диапазоны

С помощью «Всплывающего календаря» вы можете заполнить значениями дат целый диапазон (ограничение до 4000 ячеек). Даты можно вставить в столбцы таблицы, строки, объединённые ячейки или любой произвольный диапазон точно так же, как одну ячейку: 

  1. Выберите диапазон.
  2. В группе Дата/Время нажмите на кнопку «Вставить дату» > Появится всплывающий календарь.
    Или: по правому клику мыши выберите пункт «Вставить дату».
    Или: используйте сочетание клавиш Ctrl+; (точка с запятой на английской раскладке).
  3. Выберите дату > Готово. Весь диапазон заполнен значением выбранной даты.
    Совет: узнайте, как заполнить ячейки последовательными датами.
  4. Чтобы изменить значение даты, нажмите на иконку календаря справа от ячейки > Измените дату.

Внимание: после ввода даты, ячейкам автоматически присваивается формат Число/Дата. Если вы позднее удалите значения из ячеек, сами ячейки сохранят свой формат Дата, а иконка календаря для этих пустых ячеек останется доступной. Чтобы убрать иконку, измените формат ячеек на Общий.

как сделать выпадающий календарь в ячейке excel

Как заполнить диапазон последовательными датами

С надстройкой «Всплывающий календарь» вы можете быстро заполнить диапазон последовательными датами (дни по порядку):

  1. Вкладка XLTools > Кнопка «Настройки» > Вкладка Дата/Время > Отметьте флажком «Включить автоувеличение дат при заполнении диапазона ячеек» > OK.
  2. Выберите диапазон.
  3. В группе Дата/Время нажмите на кнопку «Вставить дату» > Всплывающий календарь появятся рядом с ячейкой.
    Или: по правому клику мыши выберите пункт «Вставить дату».
    Или: используйте сочетание клавиш Ctrl+; (точка с запятой на английской раскладке).
  4. Выберите начальную дату > Готово, весь диапазон будет автоматически заполнен последовательными значениями дат с шагом в 1 день.

как сделать выпадающий календарь в ячейке excel

Как вставить сразу и дату и время в ячейку

  1. Выберите ячейку.
  2. В группе Дата/Время нажмите на кнопку «Вставить дату и время» > Всплывающий календарь с часами появятся рядом с ячейкой.
    Или: по правому клику мыши выберите пункт «Вставить дату и время».
    Или: используйте сочетание клавиш: нажмите Ctrl+; (точка с запятой на английской раскладке), затем отпустите клавиши и нажмите Ctrl+Shift+; (точка с запятой на английской раскладке).
  3. Установите время при помощи колеса прокрутки мыши или стрелок Вверх/Вниз > Выберите дату из всплывающего календаря > Готово.
    Обратите внимание на формат: это то, что вам нужно? Вы можете задать другой формат по умолчанию для Всплывающего Календаря и Часов.
  4. Чтобы изменить значение, нажмите на иконку справа от ячейки > Измените дату и время.

Внимание: после ввода даты и времени, ячейке автоматически присваивается формат Число/Дата. Если вы позднее удалите значение из ячейки, сама ячейка сохранит свой формат Дата, а иконка календаря с часами для этой пустой ячейки останется доступной. Чтобы убрать иконку, измените формат ячейки на Общий.

как сделать выпадающий календарь в ячейке excel

Как вставить только время (без даты) в ячейку

Используйте надстройку «Всплывающие часы» для установки и вставки времени в ячейки и диапазоны:

  1. Выберите ячейку или диапазон.
  2. В группе Дата/Время нажмите на кнопку «Вставить время» > Всплывающие часы появятся рядом с ячейкой.
    Или: по правому клику мыши выберите пункт «Вставить время».
    Или: используйте сочетание клавиш Ctrl+Shift+; (точка с запятой на английской раскладке).
  3. Установите время при помощи колеса прокрутки мыши или стрелок Вверх/Вниз > Нажмите Ввод (Enter) > Готово.

как сделать выпадающий календарь в ячейке excel

Как изменить формат даты по умолчанию для «Всплывающего календаря»

Чтобы изменить формат, заданный по умолчанию для «Всплывающего Календаря»:

  1. Нажмите кнопку «Настройки» на панели XLTools > Вкладка Дата/Время.
  2. Отметьте флажком «По умолчанию использовать формат даты и времени, установленный ниже».
    Внимание: при снятии флажка Всплывающий календарь будет использовать формат, установленный в ваших системных настройках.
  3. Выберите подходящий формат, напр., принятый в вашей стране или на вашем языке.
    Или: задайте «Свой формат».
  4. Нажмите OK > Готово.

как сделать выпадающий календарь в ячейке excel

Вы можете обнаружить, что некоторые ячейки не подчиняются заданному формату Календаря. Это означает, что ячейкам ранее был присвоен другой формат даты. В этом случае, измените формат ячеек:

  1. Выберите ячейки > По правому клику мыши выберите «Формат ячеек».
  2. Вкладка «Число» > Формат «Дата» > Установите нужный формат даты.

Изначально Всплывающий календарь использует ваши системные настройки формата даты и времени по умолчанию. Вы можете полностью изменить настройки системы. Обратите внимание, это поменяет настройки всех учётных записей на компьютере:

  1. Панель управления > Часы, язык и регион > Изменение форматов даты.
  2. Вкладка Форматы > Установите форматы дат и времени, первого дня недели.
  3. Вкладка Местоположение > Укажите страну местонахождения.
  4. Вкладка Дополнительно > Измените язык системы > Перезагрузите компьютер.

Для вашего удобства, для «Всплывающего календаря» по умолчанию задано сочетание клавиш Ctrl+; (точка с запятой на английской раскладке) – это та же комбинация, которая используется в Excel для вставки текущей даты. Вы можете изменить горячие клавиши для «Всплывающих часов» в любое время:

Вкладка XLTools > Кнопка «Настройки» > Вкладка «Горячие клавиши» > Задайте другое сочетание > OK.

как сделать выпадающий календарь в ячейке excel

Как добавить/удалить иконку «Всплывающего календаря»

Пиктограмма (иконка) календаря появляется справа от выбранной ячейки, если для ячейки задан формат Дата. Нажатие на иконку открывает инструмент выбора даты.

  • Чтобы отключить отображение иконки Календаря:
  1. Нажмите кнопку «Настройки» на панели XLTools > Вкладка Дата/Время.
  2. Снимите флажок с опции «Отображать пиктограммы Всплывающего Календаря и Часов» > OK.
  3. Готово! Пиктограммы перестанут отображаться, Календарь и Часы будут по-прежнему доступны для использования. Иконки можно вернуть в любое время.

как сделать выпадающий календарь в ячейке excel

  • Чтобы настроить появление иконки рядом с пустыми ячейками, столбцами, строками или произвольным диапазоном:
  1. Выберите пустую ячейку или диапазон.
  2. Вкладка «Главная» > Группа «Число» > Дата > OK. Так, ячейкам будет присвоен формат даты.
    Или: вставьте любую дату с помощью «Всплывающего календаря» > Нажмите кнопку Delete. Это удалит непосредственно значения, и присвоит выбранным ячейкам формат даты.
  3. Готово! Теперь, если вы выберите какую-либо ячейку в этом диапазоне, рядом с ней появится иконка Календаря.
  • Чтобы убрать иконку Календаря с пустых ячеек:
    Если ячейка пуста, но иконка по-прежнему появляется, значит, что ячейке присвоен формат даты или времени. Чтобы убрать иконку с пустых ячеек, измените их формат на Общий:
  1. Выберите пустую ячейку или диапазон.
  2. Вкладка «Главная» > Группа «Редактирование» > Очистить форматы.
    Или: вкладка «Главная» > Группа «Число» > Выберите «Общий» из выпадающего списка.
    Или: по правому клику «Формат ячеек» > Вкладка «Число» > Выберите формат «Общий» > OK.
  1. Нажмите кнопку «Настройки» на панели XLTools > Вкладка Дата/Время.
  2. Установите или снимите флажки соответствующих опций:
    • «Добавить пункт «Вставить дату» в контекстное меню»
    • «Добавить пункт «Вставить время» в контекстное меню»
    • «Добавить пункт «Вставить дату и время» в контекстное меню»
  3. Нажмите OK > Готово.

как сделать выпадающий календарь в ячейке excel

Как встроить всплывающий календарь в книгу Excel

Надстройка XLTools «Всплывающий календарь» не может быть встроена в книгу. «Всплывающий календарь» будет видим и доступен только тем пользователям, у кого установлена надстройка XLTools.

Если вам нужно отправить книгу другим пользователям, попробуйте наш встраиваемый календарь — онлайн надстройка XLTools.net Календарь. Установка на компьютер не требуется: отправьте файл коллегам, и они тоже смогут воспользоваться календарём. Это веб-приложение удобно для рассылки расписаний, графиков, планов, т.д.

Появились вопросы или предложения? Оставьте комментарий ниже.

Для гарантии правильности ввода дат пользователями элемент управления Excel Календарь (Calendar) может упростить ситуацию как для вас, так и для пользователей, работающих с вашей электронной таблицей. При помощи этого трюка можно добавить элемент управления Календарь (Calendar) в любую рабочую книгу Excel.

Если дата введена неправильно, Excel не сможет ее распознать. Иногда это означает, что вы не можете выполнять вычисления с числами, выглядящими как даты, но датами не являющимися. Кроме того, это означает, что любые диаграммы или сводные таблицы, которые основываются на этих данных, будут неверными. Хотя решить эту проблему может весьма разностороннее средство проверки данных Excel, оно также далеко от совершенства.

При помощи этого трюка можно добавить элемент управления Календарь (Calendar) в любую рабочую книгу Excel. Для начала откройте рабочую книгу, куда собираетесь добавить календарь. Лучше использовать ваш файл Personal.xls, который можно открыть командой Файл → Открыть (File → Open). Если этот пункт меню недоступен, значит, у вас пока нет файла Personal.xls. Можно создать его, записав пустой макрос. Для этого выберите команду Разработчик → Начать запись (Developer → Record New Macro) и в поле Сохранить в (Store Macro In) выберите вариант Личная книга макросов (Personal Macro Workbook). Затем щелкните на кнопке ОК, выделите любую ячейку и остановите запись. Excel автоматически создаст файл Personal.xls.

Выберите команду Разработчик → Редактор Visual Basic (Developer → Visual Basic Editor) (сочетание клавиш Alt/Option+Fll) и в VBE выберите команду Insert → UserForm. Должна появиться панель инструментов Control. (Если панель не открылась, выберите команду View → Toolbox.) Правой кнопкой мыши щелкните панель инструментов Control и в контекстном меню выберите команду Additional Controls. Прокрутите список до флажка Элемент управления Календарь 10.0 (Calendar Control 10.0) (номер версии зависит от версии Excel). Установите этот флажок и щелкните на кнопке ОК. Щелкните календарь, который теперь представляет собой часть панели инструментов, а затем щелкните форму UserForm, которую добавили ранее. При помощи маркеров изменения размера формы UserForm и элемента управления Календарь (Calendar) отрегулируйте их размер.

Удостоверьтесь, что форма UserForm выделена, и выберите команду View → Properties Window (клавиша F4). В окне Properties выберите Caption и замените слово UserForml словом Calendar. Теперь выберите команду View → Code (клавиша F7) и в частном модуле введите код, приведенный в листинге 7.14.

1 2 3 4 5 6 7 8 
//Листинг 7.14 Private Sub Calendar1_Click() ActiveCell = Calendar1.Value End Sub   Private Sub UserForm_Activate()     Me.Calendar1.Value = Date End Sub

//Листинг 7.14 Private Sub Calendar1_Click() ActiveCell = Calendar1.Value End Sub Private Sub UserForm_Activate() Me.Calendar1.Value = Date End Sub

Выберите команду Insert → Module и в общем модуле введите код из листинга 7.15.

1 2 3 4 
//Листинг 7.15 Sub ShowIt()     UserForm1.Show End Sub

//Листинг 7.15 Sub ShowIt() UserForm1.Show End Sub

Закройте окно, чтобы вернуться в Excel. Выберите команду Разработчик > Макрос → Макросы (Developer > Macro → Macros) (сочетание клавиш Alt+F8) и затем выберите ShowIt. Щелкните кнопку Параметры (Options) и назначьте макросу клавишное сочетание — все готово. Нажмите выбранное сочетание клавиш, раскроется календарь с выбранной сегодняшней датой. Щелкните любую дату, и она будет вставлена в активную ячейку.

Формат даты используется для отображения дат и времени, представленных числами, в виде дат. Система дат в Excel устроена так, что дату 01.01.1900 года приняли за отправную точку и обозначили числом 1, таким образом, любая дата представляет собой число дней, пройденных с 1 января 1900 года до этой даты. Значение времени является составной частью даты и хранится в виде десятичной дроби. Со значениями даты и времени можно производить математические действия, так как они являются числами. 

Как задать формат даты в Excel 2007/2010?

Для задания формата даты необходимо выделить нужные ячейки, после чего перейти на вкладку «Главная», в группу «Число» и раскрыть список форматов в поле «Числовой формат».

как сделать выпадающий календарь в ячейке excel

В раскрывшемся списке доступны два числовых формата: «Краткая дата» и «Длинный формат даты». В первом случае дата отображается числами, а во втором — числами и словами. Если предложенные форматы не подходят, выбираем пункт «Другие числовые форматы…», в результате чего появляется окно «Формат ячеек».

как сделать выпадающий календарь в ячейке excel

Это окно также можно вызвать щелчком левой кнопки мыши на правый нижний уголок группы,

как сделать выпадающий календарь в ячейке excel

либо просто кликнуть правой кнопкой мыши в области выделенных ячеек и выбрать из контекстного меню пункт «Формат ячеек».

как сделать выпадающий календарь в ячейке excel

В появившемся окне «Формат ячеек» переходим на вкладку «Число» и в группе «Числовые форматы» выбираем пункт «Дата»

как сделать выпадающий календарь в ячейке excel

В правой части окна отображаются возможности данного формата, в группе «Тип» выбераем нужный способ отображения даты. Форматы даты, перед которыми стоит значок *(звездочка), зависят от даты операционной системы, форматы, перед которыми этого значка нет – не зависят.

Как задать свой собственный формат даты? Как преобразовать дату в год, месяц либо день недели?

Выделяем нужные ячейки в окне открытого листа и вызываем окно «Формат ячеек» любым из перечисленных выше способов. В окне «Формат ячеек» выбираем вкладку «Число» и в группе «Числовые форматы» выбираем пункт «Все форматы». После этого помещаем курсор в поле «Тип» и набираем код числового формата в русской раскладке клавиатуры:

— М – для отображения месяцев в виде числа от 1 до 12;

— ММ — для отображения месяцев в виде числа от 01 до 12;

— МММ – для отображения месяцев в виде «янв» — «дек»;

— ММММ — для отображения месяцев в виде «январь» — «декабрь»;

— МММММ – для отображения месяцев виде первой буквы месяца;

Форматы с кодом «М» можно использовать для преобразования даты в месяц.

— д – для отображения дней в виде числа от 1 до 31;

— дд – для отображения дней в виде числа от 01 до 31;

— ддд – для отображения дней в виде «Пн» — «Вс»;

— дддд – для отображения дней в виде «понедельник» — «воскресенье»;

Форматы с кодом «д» используются для преобразования даты в день.

— гг – для отображения лет в виде чисел от 00 до 99;

-гггг – для отображения лет в виде чисел от 1900 до 9999.

Форматы с кодом «г» используются для преобразования даты в год.

Как установить систему дат 1904?

Кроме вышеописанной системы дат, Excel поддерживает еще одну систему – 1904 года, которая используется на компьютерах Macintosh. Excel автоматически производит смену системы дат, но при необходимости, это можно сделать самостоятельно вручную. Для этого нажимаем кнопку «Office», выбираем кнопку «Параметры Excel», заходим в раздел «Дополнительно» и находим группу «При пересчете этой книги». Смена системы дат производится установкой/снятием флажка перед пунктом «Использовать систему дат 1904».

Как вводить дату в ячейку?

Для того, чтобы Excel воспринимал информацию, вводимую в ячейку, как дату, необходимо использовать в качестве разделителя точку, тире либо наклонную черту «/». При этом все введенные числа, меньшие 31.12, 31-12 либо 31/12 будут автоматически восприниматься как даты, а большие — как текст. Как уже говорилось выше, ячейки с датами могут использоваться в расчетах.

Для тех, кто активно работает с датами в своих таблицах, были созданы надстройки, представляющие собой календарь в Excel. Пример такой надстройки – календарь samradDatePicker. Скажем спасибо создателям этой надстройки и тем, кто доработал ее и перевел на русский язык! Надстройка упрощает ввод дат в ячейки листа Excel. После установки этой надстройки в контекстное меню (щелчок правой кнопки мыши) добавляется новый пункт «Выбрать из календаря», а при выделении ячеек, содержащих дату, справа от ячейки отображается значок календаря.

бесплатно скачать надстройку samradDatePicker для быстрого ввода дат

Как устанавливаются надстройки в Excel, уже описывалось в одной из статей на этом сайте, поэтому не буду повторяться. Добавлю лишь только, что Вы можете бесплатно скачать эту надстройку, а также ознакомиться с другими полезными надстройками для Excel.

Как вставить в ячейку статическую, фиксированную, не обновляемую дату?

Выделите в окне открытого листа ячейку, в которую требуется вставить текущую дату, и нажмите сочетание клавиш Ctrl+; (точка с запятой). При нажатии этого сочетания клавиш делается своего рода «снимок» с текущей даты и вставляется в ячейку. Введенная таким способом дата не изменяется с течением времени, а остается фиксированной.

Как вставить в ячейку текущую автоматически обновляемую дату?

Выберите нужную ячейку на листе Excel и введите в нее, как показано ниже,  функцию «Сегодня», использующую значение системных часов компьютера.

Функцию можно вписать в ячейку вручную с клавиатуры, а можно воспользоваться мастером функций.

Другие материалы по теме:

Одним из распространенных способов использования Excel является создание списков событий, встреч и других мероприятий, связанных с календарем. В то время как Excel способен с легкостью обрабатывать эти данные, он не имеет быстрого способа визуализировать эту информацию. Нам потребуется немного творчества, условного форматирования, несколько формул и 3 строки кода VBA, чтобы создать симпатичный, интерактивный календарь. Рассмотрим, как можем все это реализовать.

Я нашел этот пример на сайте Chandoo.org и делюсь им с вами.

Интерактивный календарь в Excel

На выходе у нас должно получиться что-то вроде этого:

Создаем таблицу с событиями

На листе Расчеты создаем таблицу со всеми событиями

Настраиваем календарь

Так как все события происходят в рамках двух месяцев, я просто ввел первую дату первого месяца, протянул вниз и отформатировал так, чтобы было похоже на календарь. На данном этапе он должен выглядеть следующим образом.

Задаем имя диапазону дат в календаре

Это просто, выделяем весь диапазон дат нашего календаря и в поле Имя задаем «Календарь»

Определяем ячейку с выделенной датой

На листе Расчеты выбираем пустую ячейку и задаем ей имя «ВыделеннаяЯчейка». Мы будем использовать ее для определения даты, которую выбрал пользователь. В нашем случае, это ячейка G3.

Добавляем макрос на событие Worksheet_selectionchange()

Описанный ниже код поможет идентифицировать, когда пользователь выбрал ячейку в диапазоне “Календарь”. Добавьте этот код на лист с календарем. Для этого открываем редактор VBA, нажатием Alt+F11. Копируем код ниже и вставляем его Лист1.

1
2
3
4
5

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Range(«calendar»)) Is Nothing Then
= ActiveCell.Value
End If
End Sub

Настраиваем формулы для отображения деталей при выборе даты

Изменение даты на календаре ведет за собой изменение 4-х параметров отображения в анонсе: название, дата, место и описание. Зная, что дата находится в ячейке «ВыделеннаяЯчейка», воспользуемся формулами ВПР, ЕСЛИ и ЕСЛИОШИБКА для определения этих параметров. Логика формул следующая: если на выбранную дату существует событие, возвращает данные этого события, иначе возвращает пустую ячейку. Формулы с определением параметров события находятся на листе Расчеты, в ячейках G10:G13.

Добавление анонса

Наконец добавляем в лист Календарь 4 элемента Надпись и привязываем их к данным, находящихся в ячейках G10:G13 листа Расчеты.

Совет: для того, чтобы привязать значение ячейки к элементу Надпись, просто выделите элемент, в строке формул наберите G10 и щелкните Enter.

Настраиваем условное форматирование для выделенной даты

Наконец, добавьте условное форматирование, чтобы выделить даты с событиями в календаре.

Выберите диапазон дат в календаре

Переходим на вкладке Главная в группу Стили –> Условное форматирование –> Создать правило

В диалоговом окне Создание правила форматирования, выберите тип правила Использовать формулу для определения форматируемых ячеек.

Задаем правила выделения как на рисунке

Форматируем

Подчищаем рабочий лист, форматируем наш календарь и получаем классную визуализацию.

Пример рабочей книги с интерактивным календарем.

Понравилась статья? Поделить с друзьями:
  • Нет иконки word на файлах
  • Нет иконки word на документах
  • Нет изображения в excel
  • Нет значков листов в excel
  • Нет значка параметры вставки word