Для гарантии правильности ввода дат пользователями элемент управления 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 Office позволяет несколькими способами вставить календарь в таблицу или на лист. Давайте выясним, как это можно сделать.
Если инструкция по созданию календаря в Microsoft Excel вам покажется сложной, в качестве альтернативы рекомендуем рассмотреть веб-платформу Canva, доступную онлайн из любого браузера. Это сервис с огромной библиотекой редактируемых шаблонов различной направленности и стилистики, в числе которых есть и календари. Любой из них можно изменить на свое усмотрение либо создать таковой с нуля и затем сохранить на компьютер в предпочтительном формате или распечатать.
Создание различных календарей
Все календари, созданные в Excel, можно разделить на две большие группы: охватывающие определенный отрезок времени (например, год) и вечные, которые будут сами обновляться на актуальную дату. Соответственно и подходы к их созданию несколько отличаются. Кроме того, можно использовать уже готовый шаблон.
Способ 1: создание календаря на год
Прежде всего, рассмотрим, как создать календарь за определенный год.
- Разрабатываем план, как он будет выглядеть, где будет размещаться, какую ориентацию иметь (альбомную или книжную), определяем, где будут написаны дни недели (сбоку или сверху) и решаем другие организационные вопросы.
- Для того, чтобы сделать календарь на один месяц выделяем область, состоящую из 6 ячеек в высоту и 7 ячеек в ширину, если вы решили писать дни недели сверху. Если вы будете их писать слева, то, соответственно, наоборот. Находясь во вкладке «Главная», кликаем на ленте по кнопке «Границы», расположенной в блоке инструментов «Шрифт». В появившемся списке выбираем пункт «Все границы».
- Выравниваем ширину и высоту ячеек, чтобы они приняли квадратную форму. Для того, чтобы установить высоту строки кликаем на клавиатуре сочетание клавиш Ctrl+A. Таким образом, выделяется весь лист. Затем вызываем контекстное меню кликом левой кнопки мыши. Выбираем пункт «Высота строки».
Открывается окно, в котором нужно установить требуемую высоту строки. Ели вы впервые делаете подобную операцию и не знаете, какой размер установить, то ставьте 18. Потом жмите на кнопку «OK».
Теперь нужно установить ширину. Кликаем по панели, на которой указаны наименования столбцов буквами латинского алфавита. В появившемся меню выбираем пункт «Ширина столбцов».
В открывшемся окне установите нужный размер. Если не знаете, какой размер установить, можете поставить цифру 3. Жмите на кнопку «OK».
После этого, ячейки на листе приобретут квадратную форму.
- Теперь над расчерченным шаблоном нам нужно зарезервировать место для названия месяца. Выделяем ячейки, находящиеся выше строки первого элемента для календаря. Во вкладке «Главная» в блоке инструментов «Выравнивание» жмем на кнопку «Объединить и поместить в центре».
- Прописываем дни недели в первом ряду элемента календаря. Это можно сделать при помощи автозаполнения. Вы также можете на свое усмотрение отформатировать ячейки этой небольшой таблицы, чтобы потом не пришлось форматировать каждый месяц в отдельности. Например, можно столбец, предназначенный для воскресных дней залить красным цветом, а текст строки, в которой находятся наименования дней недели, сделать полужирным.
- Копируем элементы календаря ещё для двух месяцев. При этом не забываем, чтобы в область копирования также входила объединенная ячейка над элементами. Вставляем их в один ряд так, чтобы между элементами была дистанция в одну ячейку.
- Теперь выделяем все эти три элемента, и копируем их вниз ещё в три ряда. Таким образом, должно получиться в общей сложности 12 элементов для каждого месяца. Дистанцию между рядами делайте две ячейки (если используете книжную ориентацию) или одну (при использовании альбомной ориентации).
- Затем в объединенной ячейке пишем название месяца над шаблоном первого элемента календаря – «Январь». После этого, прописываем для каждого последующего элемента своё наименование месяца.
- На заключительном этапе проставляем в ячейки даты. При этом, можно значительно сократить время, воспользовавшись функцией автозаполнения, изучению которой посвящен отдельный урок.
После этого, можно считать, что календарь готов, хотя вы можете дополнительно отформатировать его на своё усмотрение.
Урок: Как сделать автозаполнение в Excel
Способ 2: создание календаря с использованием формулы
Но, все-таки у предыдущего способа создания есть один весомый недостаток: его каждый год придется делать заново. В то же время, существует способ вставить календарь в Excel с помощью формулы. Он будет каждый год сам обновляться. Посмотрим, как это можно сделать.
- В левую верхнюю ячейку листа вставляем функцию:
="Календарь на " & ГОД(СЕГОДНЯ()) & " год"
Таким образом, мы создаем заголовок календаря с текущим годом. - Чертим шаблоны для элементов календаря помесячно, так же как мы это делали в предыдущем способе с попутным изменением величины ячеек. Можно сразу провести форматирование этих элементов: заливка, шрифт и т.д.
- В место, где должно отображаться названия месяца «Январь», вставляем следующую формулу:
=ДАТА(ГОД(СЕГОДНЯ());1;1)
Но, как видим, в том месте, где должно отобразиться просто название месяца установилась дата. Для того, чтобы привести формат ячейки к нужному виду, кликаем по ней правой кнопкой мыши. В контекстном меню выбираем пункт «Формат ячеек…».
В открывшемся окне формата ячеек переходим во вкладку «Число» (если окно открылось в другой вкладке). В блоке «Числовые форматы» выделяем пункт «Дата». В блоке «Тип» выбираем значение «Март». Не беспокойтесь, это не значит, что в ячейке будет слово «Март», так как это всего лишь пример. Жмем на кнопку «OK».
- Как видим, наименование в шапке элемента календаря изменилось на «Январь». В шапку следующего элемента вставляем другую формулу:
=ДАТАМЕС(B4;1)
В нашем случае, B4 – это адрес ячейки с наименованием «Январь». Но в каждом конкретном случае координаты могут быть другими. Для следующего элемента уже ссылаемся не на «Январь», а на «Февраль», и т.д. Форматируем ячейки так же, как это было в предыдущем случае. Теперь мы имеем наименования месяцев во всех элементах календаря. - Нам следует заполнить поле для дат. Выделяем в элементе календаря за январь все ячейки, предназначенные для внесения дат. В Строку формул вбиваем следующее выражение:
=ДАТА(ГОД(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. - Но, как видим, поля заполнились непонятными числами. Для того, чтобы они приняли нужный нам вид. Форматируем их под дату, как это уже делали ранее. Но теперь в блоке «Числовые форматы» выбираем значение «Все форматы». В блоке «Тип» формат придется ввести вручную. Там ставим просто букву «Д». Жмем на кнопку «OK».
- Вбиваем аналогичные формулы в элементы календаря за другие месяцы. Только теперь вместо адреса ячейки D4 в формуле нужно будет проставить координаты с наименованием ячейки соответствующего месяца. Затем, выполняем форматирование тем же способом, о котором шла речь выше.
- Как видим, расположение дат в календаре все ещё не корректно. В одном месяце должно быть от 28 до 31 дня (в зависимости от месяца). У нас же в каждом элементе присутствуют также числа из предыдущего и последующего месяца. Их нужно убрать. Применим для этих целей условное форматирование.
Производим в блоке календаря за январь выделение ячеек, в которых содержатся числа. Кликаем по значку «Условное форматирование», размещенному на ленте во вкладке «Главная» в блоке инструментов «Стили». В появившемся перечне выбираем значение «Создать правило».
Открывается окно создания правила условного форматирования. Выбираем тип «Использовать формулу для определения форматируемых ячеек». В соответствующее поле вставляем формулу:
=И(МЕСЯЦ(D6)1+3*(ЧАСТНОЕ(СТРОКА(D6)-5;9))+ЧАСТНОЕ(СТОЛБЕЦ(D6);9))
D6 – это первая ячейка выделяемого массива, который содержит даты. В каждом конкретном случае её адрес может отличаться. Затем кликаем по кнопке «Формат».В открывшемся окне переходим во вкладку «Шрифт». В блоке «Цвет» выбираем белый или цвет фона, если у вас установлен цветной фон календаря. Жмем на кнопку «OK».
Вернувшись в окно создания правила, жмем на кнопку «OK».
- Используя аналогичный способ, проводим условное форматирование относительно других элементов календаря. Только вместо ячейки D6 в формуле нужно будет указывать адрес первой ячейки диапазона в соответствующем элементе.
- Как видим, числа, которые не входят в соответствующий месяц, слились с фоном. Но, кроме того, с ним слились и выходные дни. Это было сделано специально, так как ячейки, где содержаться числа выходных дней мы зальём красным цветом. Выделяем в январском блоке области, числа в которых выпадают на субботу и воскресение. При этом, исключаем те диапазоны, данные в которых были специально скрыты путем форматирования, так как они относятся к другому месяцу. На ленте во вкладке «Главная» в блоке инструментов «Шрифт» кликаем по значку «Цвет заливки» и выбираем красный цвет.
Точно такую же операцию проделываем и с другими элементами календаря.
- Произведем выделение текущей даты в календаре. Для этого, нам нужно будет опять произвести условное форматирование всех элементов таблицы. На этот раз выбираем тип правила «Форматировать только ячейки, которые содержат». В качестве условия устанавливаем, чтобы значение ячейки было равно текущему дню. Для этого вбиваем в соответствующее поля формулу (показано на иллюстрации ниже).
=СЕГОДНЯ()
В формате заливки выбираем любой цвет, отличающийся от общего фона, например зеленый. Жмем на кнопку «OK».
После этого, ячейка, соответствующая текущему числу, будет иметь зеленый цвет.
- Установим наименование «Календарь на 2017 год» посередине страницы. Для этого выделяем всю строку, где содержится это выражение. Жмем на кнопку «Объединить и поместить в центре» на ленте. Это название для общей презентабельности можно дополнительно отформатировать различными способами.
В целом работа над созданием «вечного» календаря завершена, хотя вы можете ещё долго проводить над ним различные косметические работы, редактируя внешний вид на свой вкус. Кроме того, отдельно можно будет выделить, например, праздничные дни.
Урок: Условное форматирование в Excel
Способ 3: использование шаблона
Те пользователи, которые ещё в недостаточной мере владеют Экселем или просто не хотят тратить время на создание уникального календаря, могут воспользоваться готовым шаблоном, закачанным из интернета. Таких шаблонов в сети довольно много, причем велико не только количество, но и разнообразие. Найти их можно, просто вбив соответствующий запрос в любую поисковую систему. Например, можно задать следующий запрос: «календарь шаблон Excel».
Примечание: В последних версиях пакета Microsoft Office огромный выбор шаблонов (в том числе и календарей) интегрирован в состав программных продуктов. Все они отображаются непосредственно при открытии программы (не конкретного документа) и, для большего удобства пользователя, разделены на тематические категории. Именно здесь можно выбрать подходящий шаблон, а если такового не найдется, его всегда можно скачать с официального сайта Office.com.
По сути, такой шаблон — уже готовый календарь, в котором вам только останется занести праздничные даты, дни рождения или другие важные события. Например, таким календарем является шаблон, который представлен на изображении ниже. Он представляет собой полностью готовую к использованию таблицу.
Вы можете в нем с помощью кнопки заливки во вкладке «Главная» закрасить различными цветами ячейки, в которых содержатся даты, в зависимости от их важности. Собственно, на этом вся работа с подобным календарем может считаться оконченной и им можно начинать пользоваться.
Мы разобрались, что календарь в Экселе можно сделать двумя основными способами. Первый из них предполагает выполнение практически всех действий вручную. Кроме того, календарь, сделанный этим способом, придется каждый год обновлять. Второй способ основан на применении формул. Он позволяет создать календарь, который будет обновляться сам. Но, для применения данного способа на практике нужно иметь больший багаж знаний, чем при использовании первого варианта. Особенно важны будут знания в сфере применения такого инструмента, как условное форматирование. Если же ваши знания в Excel минимальны, то можно воспользоваться готовым шаблоном, скачанным из интернета.
Всплывающий календарь
Если вам часто приходится вводить даты в ячейки листа, то делать это вручную неудобно. Для ввода именно сегодняшней даты можно воспользоваться функцией СЕГОДНЯ (TODAY), сочетанием клавиш Ctrl+; или макросом, но если нужны разные даты из прошлого или будущего, то вбивать их руками долго.
К сожалению, в стандартном арсенале средств Excel нет встроенного выпадающего календаря (в отличие от Word), да еще и в последних версиях, начиная с Excel 2007, Microsoft зачем-то убрала из стандартного комплекта поставки библиотеку mscalc.osx, которая позволяла быстро создать пользовательскую форму с календарем.
Естественно, это «узкое место» не осталось без внимания опытных пользователей и экспертов Excel MVP, которые оперативно создали несколько интерактивных календарей на макросах для удобного ввода дат. Вот подборка неплохих, на мой взгляд, бесплатных вариантов:
|
Windows Date Picker Автор: Ron de Bruin Цена: бесплатно Ссылка
|
|
Excel Date Picker Автор: Jim Cone Цена: бесплатно Ссылка
|
|
Mini Calendar and Date Picker Автор: VERTEX Цена: бесплатно. Ссылка в Office Apps Store
|
|
Date Picker Автор: Sam Radakovitz, руководитель команды программистов Excel в Microsoft Цена: бесплатно Сайт автора умер, ссылки не работают, но можно скачать заботливо сохраненную мной когда-то копию здесь.
|
P.S.
Установка надстроек:
- в Excel 2003 и старше — меню Сервис — Надстройки — Обзор (Tools — Add-ins — Browse)
- в Excel 2007 и новее — Файл — Параметры — Надстройки — Перейти — Обзор (File — Options — Add-ins — Go To — Browse)
Ссылки по теме
- Всплывающий календарь из надстройки PLEX
- Автоматический ввод даты при изменении ячейки
Для гарантии правильности ввода дат пользователями элемент управления 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 |
Выберите команду Insert → Module и в общем модуле введите код из листинга 7.15.
1 2 3 4 |
//Листинг 7.15 Sub ShowIt() UserForm1.Show End Sub |
Закройте окно, чтобы вернуться в Excel. Выберите команду Разработчик > Макрос → Макросы (Developer > Macro → Macros) (сочетание клавиш Alt+F8) и затем выберите ShowIt. Щелкните кнопку Параметры (Options) и назначьте макросу клавишное сочетание — все готово. Нажмите выбранное сочетание клавиш, раскроется календарь с выбранной сегодняшней датой. Щелкните любую дату, и она будет вставлена в активную ячейку.
Содержание
- 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, которые оперативно создали несколько интерактивных календарей на макросах для удобного ввода дат. Вот подборка неплохих, на мой взгляд, бесплатных вариантов:
![]() |
Windows Date Picker Автор: Ron de Bruin Цена: бесплатно Ссылка
|
![]() |
Excel Date Picker Автор: Jim Cone Цена: бесплатно Ссылка
|
![]() |
Mini Calendar and Date Picker Автор: VERTEX Цена: бесплатно. Ссылка в Office Apps Store
|
![]() |
Date Picker Автор: Sam Radakovitz, руководитель команды программистов Excel в Microsoft Цена: бесплатно Сайт автора умер, ссылки не работают, но можно скачать заботливо сохраненную мной когда-то копию здесь.
|
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
Внимание: отмена последнего действия (UNDO) невозможна. Рекомендуем сохранять резервную копию файлов или использовать «Контроль версий» XLTools для отслеживания изменений.
Как вставить или изменить дату в ячейке с помощью «Всплывающего календаря»
- Выберите ячейку.
- В группе Дата/Время нажмите на кнопку «Вставить дату» > Календарь всплывёт рядом с ячейкой.
Или: по правому клику мыши выберите пункт «Вставить дату».
Или: используйте сочетание клавиш Ctrl+; (точка с запятой на английской раскладке). - Выберите нужную дату из календаря > Готово.
Обратите внимание на формат: это то, что вам нужно? Вы можете изменить формат даты по умолчанию. - Чтобы изменить значение даты, нажмите на иконку календаря справа от ячейки > Измените дату.
«Всплывающий календарь» запоминает последнюю использованную дату, чтобы вам было проще вводить следующую дату.
Внимание: после ввода даты, ячейке автоматически присваивается формат Число/Дата. Если вы позднее удалите значение из ячейки, сама ячейка сохранит свой формат Дата, а иконка календаря для этой пустой ячейки останется доступной. Чтобы убрать иконку, измените формат ячейки на Общий.
Как из календаря вставить текущую дату в ячейку
- Выберите ячейку, в которую нужно вставить текущую дату.
- В группе Дата/Время нажмите на кнопку «Вставить дату» > Календарь появится рядом с ячейкой.
Или: по правому клику мыши выберите пункт «Вставить дату».
Или: используйте сочетание клавиш Ctrl+; (точка с запятой на английской раскладке). - Нажмите по надписи «Сегодня» в нижней части календаря > Готово.
Как заполнить датами целый столбец, строку или несмежные диапазоны
С помощью «Всплывающего календаря» вы можете заполнить значениями дат целый диапазон (ограничение до 4000 ячеек). Даты можно вставить в столбцы таблицы, строки, объединённые ячейки или любой произвольный диапазон точно так же, как одну ячейку:
- Выберите диапазон.
- В группе Дата/Время нажмите на кнопку «Вставить дату» > Появится всплывающий календарь.
Или: по правому клику мыши выберите пункт «Вставить дату».
Или: используйте сочетание клавиш Ctrl+; (точка с запятой на английской раскладке). - Выберите дату > Готово. Весь диапазон заполнен значением выбранной даты.
Совет: узнайте, как заполнить ячейки последовательными датами. - Чтобы изменить значение даты, нажмите на иконку календаря справа от ячейки > Измените дату.
Внимание: после ввода даты, ячейкам автоматически присваивается формат Число/Дата. Если вы позднее удалите значения из ячеек, сами ячейки сохранят свой формат Дата, а иконка календаря для этих пустых ячеек останется доступной. Чтобы убрать иконку, измените формат ячеек на Общий.
Как заполнить диапазон последовательными датами
С надстройкой «Всплывающий календарь» вы можете быстро заполнить диапазон последовательными датами (дни по порядку):
- Вкладка XLTools > Кнопка «Настройки» > Вкладка Дата/Время > Отметьте флажком «Включить автоувеличение дат при заполнении диапазона ячеек» > OK.
- Выберите диапазон.
- В группе Дата/Время нажмите на кнопку «Вставить дату» > Всплывающий календарь появятся рядом с ячейкой.
Или: по правому клику мыши выберите пункт «Вставить дату».
Или: используйте сочетание клавиш Ctrl+; (точка с запятой на английской раскладке). - Выберите начальную дату > Готово, весь диапазон будет автоматически заполнен последовательными значениями дат с шагом в 1 день.
Как вставить сразу и дату и время в ячейку
- Выберите ячейку.
- В группе Дата/Время нажмите на кнопку «Вставить дату и время» > Всплывающий календарь с часами появятся рядом с ячейкой.
Или: по правому клику мыши выберите пункт «Вставить дату и время».
Или: используйте сочетание клавиш: нажмите Ctrl+; (точка с запятой на английской раскладке), затем отпустите клавиши и нажмите Ctrl+Shift+; (точка с запятой на английской раскладке). - Установите время при помощи колеса прокрутки мыши или стрелок Вверх/Вниз > Выберите дату из всплывающего календаря > Готово.
Обратите внимание на формат: это то, что вам нужно? Вы можете задать другой формат по умолчанию для Всплывающего Календаря и Часов. - Чтобы изменить значение, нажмите на иконку справа от ячейки > Измените дату и время.
Внимание: после ввода даты и времени, ячейке автоматически присваивается формат Число/Дата. Если вы позднее удалите значение из ячейки, сама ячейка сохранит свой формат Дата, а иконка календаря с часами для этой пустой ячейки останется доступной. Чтобы убрать иконку, измените формат ячейки на Общий.
Как вставить только время (без даты) в ячейку
Используйте надстройку «Всплывающие часы» для установки и вставки времени в ячейки и диапазоны:
- Выберите ячейку или диапазон.
- В группе Дата/Время нажмите на кнопку «Вставить время» > Всплывающие часы появятся рядом с ячейкой.
Или: по правому клику мыши выберите пункт «Вставить время».
Или: используйте сочетание клавиш Ctrl+Shift+; (точка с запятой на английской раскладке). - Установите время при помощи колеса прокрутки мыши или стрелок Вверх/Вниз > Нажмите Ввод (Enter) > Готово.
Как изменить формат даты по умолчанию для «Всплывающего календаря»
Чтобы изменить формат, заданный по умолчанию для «Всплывающего Календаря»:
- Нажмите кнопку «Настройки» на панели XLTools > Вкладка Дата/Время.
- Отметьте флажком «По умолчанию использовать формат даты и времени, установленный ниже».
Внимание: при снятии флажка Всплывающий календарь будет использовать формат, установленный в ваших системных настройках. - Выберите подходящий формат, напр., принятый в вашей стране или на вашем языке.
Или: задайте «Свой формат». - Нажмите OK > Готово.
Вы можете обнаружить, что некоторые ячейки не подчиняются заданному формату Календаря. Это означает, что ячейкам ранее был присвоен другой формат даты. В этом случае, измените формат ячеек:
- Выберите ячейки > По правому клику мыши выберите «Формат ячеек».
- Вкладка «Число» > Формат «Дата» > Установите нужный формат даты.
Изначально Всплывающий календарь использует ваши системные настройки формата даты и времени по умолчанию. Вы можете полностью изменить настройки системы. Обратите внимание, это поменяет настройки всех учётных записей на компьютере:
- Панель управления > Часы, язык и регион > Изменение форматов даты.
- Вкладка Форматы > Установите форматы дат и времени, первого дня недели.
- Вкладка Местоположение > Укажите страну местонахождения.
- Вкладка Дополнительно > Измените язык системы > Перезагрузите компьютер.
Для вашего удобства, для «Всплывающего календаря» по умолчанию задано сочетание клавиш Ctrl+; (точка с запятой на английской раскладке) – это та же комбинация, которая используется в Excel для вставки текущей даты. Вы можете изменить горячие клавиши для «Всплывающих часов» в любое время:
Вкладка XLTools > Кнопка «Настройки» > Вкладка «Горячие клавиши» > Задайте другое сочетание > OK.
Как добавить/удалить иконку «Всплывающего календаря»
Пиктограмма (иконка) календаря появляется справа от выбранной ячейки, если для ячейки задан формат Дата. Нажатие на иконку открывает инструмент выбора даты.
- Чтобы отключить отображение иконки Календаря:
- Нажмите кнопку «Настройки» на панели XLTools > Вкладка Дата/Время.
- Снимите флажок с опции «Отображать пиктограммы Всплывающего Календаря и Часов» > OK.
- Готово! Пиктограммы перестанут отображаться, Календарь и Часы будут по-прежнему доступны для использования. Иконки можно вернуть в любое время.
- Чтобы настроить появление иконки рядом с пустыми ячейками, столбцами, строками или произвольным диапазоном:
- Выберите пустую ячейку или диапазон.
- Вкладка «Главная» > Группа «Число» > Дата > OK. Так, ячейкам будет присвоен формат даты.
Или: вставьте любую дату с помощью «Всплывающего календаря» > Нажмите кнопку Delete. Это удалит непосредственно значения, и присвоит выбранным ячейкам формат даты. - Готово! Теперь, если вы выберите какую-либо ячейку в этом диапазоне, рядом с ней появится иконка Календаря.
- Чтобы убрать иконку Календаря с пустых ячеек:
Если ячейка пуста, но иконка по-прежнему появляется, значит, что ячейке присвоен формат даты или времени. Чтобы убрать иконку с пустых ячеек, измените их формат на Общий:
- Выберите пустую ячейку или диапазон.
- Вкладка «Главная» > Группа «Редактирование» > Очистить форматы.
Или: вкладка «Главная» > Группа «Число» > Выберите «Общий» из выпадающего списка.
Или: по правому клику «Формат ячеек» > Вкладка «Число» > Выберите формат «Общий» > OK.
- Нажмите кнопку «Настройки» на панели XLTools > Вкладка Дата/Время.
- Установите или снимите флажки соответствующих опций:
- «Добавить пункт «Вставить дату» в контекстное меню»
- «Добавить пункт «Вставить время» в контекстное меню»
- «Добавить пункт «Вставить дату и время» в контекстное меню»
- Нажмите OK > Готово.
Как встроить всплывающий календарь в книгу 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?
Для задания формата даты необходимо выделить нужные ячейки, после чего перейти на вкладку «Главная», в группу «Число» и раскрыть список форматов в поле «Числовой формат».
В раскрывшемся списке доступны два числовых формата: «Краткая дата» и «Длинный формат даты». В первом случае дата отображается числами, а во втором — числами и словами. Если предложенные форматы не подходят, выбираем пункт «Другие числовые форматы…», в результате чего появляется окно «Формат ячеек».
Это окно также можно вызвать щелчком левой кнопки мыши на правый нижний уголок группы,
либо просто кликнуть правой кнопкой мыши в области выделенных ячеек и выбрать из контекстного меню пункт «Формат ячеек».
В появившемся окне «Формат ячеек» переходим на вкладку «Число» и в группе «Числовые форматы» выбираем пункт «Дата»
В правой части окна отображаются возможности данного формата, в группе «Тип» выбераем нужный способ отображения даты. Форматы даты, перед которыми стоит значок *(звездочка), зависят от даты операционной системы, форматы, перед которыми этого значка нет – не зависят.
Как задать свой собственный формат даты? Как преобразовать дату в год, месяц либо день недели?
Выделяем нужные ячейки в окне открытого листа и вызываем окно «Формат ячеек» любым из перечисленных выше способов. В окне «Формат ячеек» выбираем вкладку «Число» и в группе «Числовые форматы» выбираем пункт «Все форматы». После этого помещаем курсор в поле «Тип» и набираем код числового формата в русской раскладке клавиатуры:
— М – для отображения месяцев в виде числа от 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 |
Private Sub Worksheet_SelectionChange(ByVal Target As Range) |
Настраиваем формулы для отображения деталей при выборе даты
Изменение даты на календаре ведет за собой изменение 4-х параметров отображения в анонсе: название, дата, место и описание. Зная, что дата находится в ячейке «ВыделеннаяЯчейка», воспользуемся формулами ВПР, ЕСЛИ и ЕСЛИОШИБКА для определения этих параметров. Логика формул следующая: если на выбранную дату существует событие, возвращает данные этого события, иначе возвращает пустую ячейку. Формулы с определением параметров события находятся на листе Расчеты, в ячейках G10:G13.
Добавление анонса
Наконец добавляем в лист Календарь 4 элемента Надпись и привязываем их к данным, находящихся в ячейках G10:G13 листа Расчеты.
Совет: для того, чтобы привязать значение ячейки к элементу Надпись, просто выделите элемент, в строке формул наберите G10 и щелкните Enter.
Настраиваем условное форматирование для выделенной даты
Наконец, добавьте условное форматирование, чтобы выделить даты с событиями в календаре.
Выберите диапазон дат в календаре
Переходим на вкладке Главная в группу Стили –> Условное форматирование –> Создать правило
В диалоговом окне Создание правила форматирования, выберите тип правила Использовать формулу для определения форматируемых ячеек.
Задаем правила выделения как на рисунке
Форматируем
Подчищаем рабочий лист, форматируем наш календарь и получаем классную визуализацию.
Пример рабочей книги с интерактивным календарем.
Содержание
- Добавление элемента управления Календарь в форму
- Как сделать раскрывающийся список с календарем в excel?
- Способ 1 — горячие клавиши и раскрывающийся список в excel
- Способ 2 — самый удобный, простой и наиболее гибкий
- Способ 3 — как в excel сделать выпадающий список с использованием ActiveX
- Ссылки по теме
- Создание раскрывающегося списка
- Выпадающий список в Excel с подстановкой данных
- Выпадающий список в Excel с данными с другого листа/файла
- Как сделать зависимые выпадающие списки
- Выпадающий список с поиском
Добавление элемента управления Календарь в форму
Элемент управления Календарь может быть включен в форму для того, чтобы пользователь мог выбрать значение поля типа Дата/Время, а не вводить дату вручную.
Чтобы включить элемент управления Календарь в форму:
- Откройте форму в режиме Конструктора.
- Выберите команду меню Вставка, Элемент ActiveX (Insert, ActiveX Controls), при этом откроется диалоговое окно Вставка элемента ActiveX (Insert ActiveX Controls) со списком всех зарегистрированных в системе элементов ActiveX.
- Выберите в списке (рис. 15.37) строку Элемент управления Календарь 10.0 (Calendar Control 10.0) и нажмите кнопку ОК.
Рис. 15.37. Диалоговое окно Вставка элемента ActiveX
Далее можно настроить этот элемент, используя его свойства. В отличие от других элементов управления, в данном случае свойства имеют:
- элемент управления ActiveX формы (окно свойств то же самое, что у других элементов управления и у самой формы);
- объект Календарь, который реализуется этим элементом управления.
В нашем примере создайте новую форму в режиме Конструктора. Добавьте в нее i описанным выше способом элемент управления Календарь. Откройте диалоговое окно свойств элемента ActiveX. Обратите внимание на свойство Класс (Class), определяющее класс элемента ActiveX. Значение этого свойства установилось автоматически: MSCAL.Calendar.7. Определите имя элемента: ocxCalendar и размеры ‘ примерно 8×6 см.
Чтобы посмотреть свойства объекта Календарь:
- Поместите указатель мыши на календарь и щелкните правой кнопкой мыши, чтобы получить контекстное меню для элемента управления формы.
- В появившемся меню щелчком выберите строку Объект Календарь (Calendar Control Object), при этом откроется объектное меню (рис. 15.38). Выберите в этом меню команду Свойства (Properties). Появится диалоговое окно свойств объекта Календарь.
Рис. 15.38. Контекстное меню для элементов управления ActiveX
- По умолчанию окно свойств раскрывается на вкладке Общие (General), где можно установить некоторые обшие свойства элемента управления Календарь. Раскройте вкладку Шрифты (Fonts) диалогового окна Свойства: Календарь.
- Для элемента DayFont из списка Свойства (Property Name) на вкладке Шрифт (Font) установите шрифт Arial Cyr, в группе Аттрибуты (Font Style) установите флажок полужирный (Bold), установите размер шрифта «10» и нажмите на кнопку Применить (Apply). Размеры столбцов элемента Календарь ограничивают размер шрифта в DayFont величиной 9,75 пунктов (рис. 15.39).
Рис. 15.39. Вкладка Шрифт диалогового окна Свойства: Календарь
- Повторите процесс выбора шрифта, описанный на предыдущем шаге, для свойств GridFont (шрифт — Arial Cyr, начертание — полужирный, размер — 9) и TitleFont (шрифт — Arial Cyr, начертание — полужирный, размер — 12).
- Раскройте вкладку Цвет (Colors) диалогового окна свойств. Эта вкладка предоставляет возможность изменить на любой из 16 стандартных цветов (или системных цветов Windows) цвета фона (Backcolor), шрифта названий дней (DayFontColor), шрифта дат (GridFontColor), шрифта заголовка (TitleFontColor) и линий сетки (GridLinesColor) (рис. 15.40).
- Нажмите кнопку ОК, чтобы закрыть окно свойств объекта. Откройте окно свойств формы. Установите Отсутствуют (Neither) в качестве значения свойства Полосы прокрутки (ScrollBars) и Нет (No) как значение свойств Кнопки перехода (NavigationButtons) и Область выделения (RecordSelectors).
- Переключите форму с встроенным календарем в режим формы. Вид элемента управления Календарь в режиме Формы приведен на рис. 15.41. Чтобы изменить год или месяц, можно использовать раскрывающиеся списки в заголовке календаря.
- Вернитесь в режим Конструктора. Теперь мы рассмотрим, как можно использовать методы элемента Календарь.
Рис. 15.40. Вкладка Цвет диалогового окна Свойства: Календарь
Рис. 15.41. Форма с элементом управления Календарь с раскрывающимися списками месяца и года
Замечание
Чтобы познакомиться со всеми свойствами, методами и событиями любого элемента ActiveX, встроенного в форму, откройте окно свойств этого объекта и нажмите кнопку Справка (Help).
- Справа от календаря расположите вертикально шесть кнопок. Назовите их так, как показано на рис. 15.42: «Следующая неделя», «Предыдущая неделя», «Следующий месяц», «Предыдущий месяц», «Следующий год», «Предыдущий год».
- Ниже календаря создайте текстовое поле. В этом поле будет отображаться дата, выбранная в календаре. Присвойте свойству Имя (Name) этого поля значение Дата, а свойству Значение по умолчанию (Default Value) — значение =Date ().
- Теперь напишем несколько процедур обработки событий. Во-первых, нужно, чтобы при открытии формы на календаре отображалась текущая дата. Для этого необходимо создать процедуру обработки события Загрузка (Load) формы. Ниже приводится текст этой процедуры.
Рис. 15.42. Окончательный вид формы, содержащей элемент управления Календарь в режиме Конструктора
- При выборе даты в календаре должно меняться значение поля «Дата». Поэтому нужно написать процедуру обработки события ПослеОбновления (AfterUpdate) элемента управления Календарь. Как и предыдущая, эта процедура состоит из одного оператора. Однако в ней показано, что для ссылки на значение элемента Календарь необязательно используется свойство value.
- Еще шесть процедур должны обрабатывать событие НажатиеКнопки (Click) для каждой из шести кнопок. В этих процедурах используются шесть методов объекта Календарь:
- Поскольку год и месяц теперь можно переключать с помощью кнопок, вы можете убрать из заголовка календаря раскрывающиеся списки, для чего откройте вкладку Общие (General) диалогового окна свойств объекта и снимите флажок Выбор месяца и года (Month/Year Selectors).
- Сохраните форму, дав ей имя «Календарь». Окончательный вид формы представлен на рис. 15.43.
Рис. 15.43. Окончательный вид формы с элементом управления Календарь
Источник
Как сделать раскрывающийся список с календарем в excel?
Для таблиц, которые используют постоянные и повторяющиеся данные (например фамилии сотрудников, номенклатура товара или процент скидки для клиента) чтобы не держать в голове и не ошибиться при наборе, существует возможность один раз создать стандартный список и при подстановке данных делать выборку из него. Данная статья позволит вам использовать 4 разных способа как в экселе сделать выпадающий список.
Способ 1 — горячие клавиши и раскрывающийся список в excel
Данный способ использования выпадающего списка по сути не является инструментом таблицы, который надо как либо настраивать или заполнять. Это встроенная функция (горячие клавиши) которая работает всегда. При заполнении какого либо столбца, вы можете нажать правой кнопкой мыши на пустой ячейке и в выпадающем списке выбрать пункт меню «Выбрать из раскрывающегося списка».
Этот же пункт меню можно запустить сочетанием клавиш Alt+»Стрелка вниз» и программа автоматически предложит в выпадающем списке значения ячеек, которые вы ранее заполняли данными. На изображении ниже программа предложила 4 варианта заполнения (дублирующиеся данные Excel не показывает). Единственное условие работы данного инструмента — это между ячейкой, в которую вы вводите данные из списка и самим списком не должно быть пустых ячеек.
Использование горячих клавиш для раскрытия выпадающего списка данных
При чем список для заполнения таким способом работает как в ячейке снизу, так и в ячейке сверху. Для верхней ячейки программа возьмет содержание списка из нижних значений. И опять же не должно быть пустой ячейки между данными и ячейкой для ввода.
Выпадающий список может работать и в верхней части с данными, которые ниже ячейки
Способ 2 — самый удобный, простой и наиболее гибкий
Данный способ предполагает создание отдельных данных для списка. При чем данные могут находится как на листе с таблицей, так и на другом листе файла Excel.
- Сперва необходимо создать список данных, который будет источником данных для подстановки в выпадающий список в excel. Выделите данные и нажмите правой кнопкой мыши. В выпадающем списке выберите пункт «Присвоить имя…».
Создание набора данных для списка
В окне «Создание имени» задайте имя для вашего списка (это имя дальше будет использоваться в формуле подстановки). Имя должно быть без пробелов и начинаться с буквы.
Введите имя для набора данных
Выделите ячейки (можно сразу несколько ячеек), в которых планируется создать выпадающий список. Во вкладке «ДАННЫЕ» вверху документа нажмите на «Проверка данных».
Создать выпадающий список можно сразу для нескольких ячеек
Для создания проверки вводимых значений введите имя ранее созданного списка
При попытке ввести значение, которого нет в заданном списке, эксель выдаст ошибку.
Кроме списка можно вводить данные вручную. Если введенные данные не совпадут с одним из данных — программа выдаст ошибку
А при нажатии на кнопку выпадающего списка в ячейке вы увидите перечень значений из созданного ранее.
Способ 3 — как в excel сделать выпадающий список с использованием ActiveX
Чтобы воспользоваться этим способом, необходимо чтобы у вас была включена вкладка «РАЗРАБОТЧИК». По умолчанию эта вкладка отсутствует. Чтобы ее включить:
- Нажмите на «Файл» в левом верхнем углу приложения.
- Выберите пункт «Параметры» и нажмите на него.
- В окне настройки параметров Excel во вкладке «Настроить ленту» поставьте галочку напротив вкладки «Разработчик».
Включение вкладки «РАЗРАБОТЧИК»
Теперь вы сможете воспользоваться инструментом «Поле со списком (Элемент ActiveX)». Во вкладке «РАЗРАБОТЧИК» нажмите на кнопку «Вставить» и найдите в элементах ActiveX кнопку «Поле со списком (Элемент ActiveX)». Нажмите на нее.
Нарисуйте данный объект в excel выпадающий список в ячейке, где вам необходим выпадающий список.
Теперь необходимо настроить данный элемент. Чтобы это сделать, необходимо включить «Режим конструктора» и нажать на кнопку «Свойства». У вас должно открыться окно свойств (Properties).
С открытым окном свойств нажмите на ранее созданный элемент «Поле со списком». В списке свойств очень много параметров для настройки и вы сможете изучив их, настроить очень много начиная от отображения списка до специальных свойств данного объекта.
Но нас на этапе создания интересуют только три основных:
- ListFillRange — указывает диапазон ячеек, из которых будут браться значения для выпадающего списка. В моем примере я указал два столбца (A2:B7 — дальше покажу как это использовать). Если необходимо только одни значения указывается A2:A7.
- ListRows — количество данных в выпадающем списке. Элемент ActiveX отличается от первого способа тем, что можно указать большое количество данных.
- ColumnCount — указывает сколько столбцов данных указывать в выпадающем списке.
В строке ColumnCount я указал значение 2 и теперь в списке выпадающие данные выглядят вот так:
Как видите получился выпадающий список в excel с подстановкой данных из второго столбца с данными «Поставщик».
Если вам часто приходится вводить даты в ячейки листа, то делать это вручную неудобно. Для ввода именно сегодняшней даты можно воспользоваться функцией СЕГОДНЯ (TODAY), сочетанием клавиш Ctrl+; или макросом, но если нужны разные даты из прошлого или будущего, то вбивать их руками долго.
К сожалению, в стандартном арсенале средств Excel нет встроенного выпадающего календаря (в отличие от Word), да еще и в последних версиях, начиная с Excel 2007, Microsoft зачем-то убрала из стандартного комплекта поставки библиотеку mscalc.osx, которая позволяла быстро создать пользовательскую форму с календарем.
Естественно, это «узкое место» не осталось без внимания опытных пользователей и экспертов Excel MVP, которые оперативно создали несколько интерактивных календарей на макросах для удобного ввода дат. Вот подборка неплохих, на мой взгляд, бесплатных вариантов:
![]() |
Windows Date Picker Автор: Ron de Bruin Цена: бесплатно Ссылка
|
![]() |
Excel Date Picker Автор: Jim Cone Цена: бесплатно Ссылка
|
![]() |
Mini Calendar and Date Picker Автор: VERTEX Цена: бесплатно. Ссылка в Office Apps Store
|
![]() |
Date Picker Автор: Sam Radakovitz, руководитель команды программистов Excel в Microsoft Цена: бесплатно Сайт автора умер, ссылки не работают, но можно скачать заботливо сохраненную мной когда-то копию здесь.
|
- в Excel 2003 и старше — меню Сервис — Надстройки — Обзор (Tools — Add-ins — Browse)
- в Excel 2007 и новее — Файл — Параметры — Надстройки — Перейти — Обзор (File — Options — Add-ins — Go To — Browse)
Ссылки по теме
- Всплывающий календарь из надстройки PLEX
- Автоматический ввод даты при изменении ячейки
Под выпадающим списком понимается содержание в одной ячейке нескольких значений. Когда пользователь щелкает по стрелочке справа, появляется определенный перечень. Можно выбрать конкретное.
Очень удобный инструмент Excel для проверки введенных данных. Повысить комфорт работы с данными позволяют возможности выпадающих списков: подстановка данных, отображение данных другого листа или файла, наличие функции поиска и зависимости.
Создание раскрывающегося списка
Путь: меню «Данные» — инструмент «Проверка данных» — вкладка «Параметры». Тип данных – «Список».
Ввести значения, из которых будет складываться выпадающий список, можно разными способами:
- Вручную через «точку-с-запятой» в поле «Источник».
- Ввести значения заранее. А в качестве источника указать диапазон ячеек со списком.
- Назначить имя для диапазона значений и в поле источник вписать это имя.
Любой из вариантов даст такой результат.
Выпадающий список в Excel с подстановкой данных
Необходимо сделать раскрывающийся список со значениями из динамического диапазона. Если вносятся изменения в имеющийся диапазон (добавляются или удаляются данные), они автоматически отражаются в раскрывающемся списке.
- Выделяем диапазон для выпадающего списка. В главном меню находим инструмент «Форматировать как таблицу».
- Откроются стили. Выбираем любой. Для решения нашей задачи дизайн не имеет значения. Наличие заголовка (шапки) важно. В нашем примере это ячейка А1 со словом «Деревья». То есть нужно выбрать стиль таблицы со строкой заголовка. Получаем следующий вид диапазона:
- Ставим курсор в ячейку, где будет находиться выпадающий список. Открываем параметры инструмента «Проверка данных» (выше описан путь). В поле «Источник» прописываем такую функцию:
Протестируем. Вот наша таблица со списком на одном листе:
Добавим в таблицу новое значение «елка».
Теперь удалим значение «береза».
Осуществить задуманное нам помогла «умная таблица», которая легка «расширяется», меняется.


Теперь сделаем так, чтобы можно было вводить новые значения прямо в ячейку с этим списком. И данные автоматически добавлялись в диапазон.
- Сформируем именованный диапазон. Путь: «Формулы» — «Диспетчер имен» — «Создать». Вводим уникальное название диапазона – ОК.
- Создаем раскрывающийся список в любой ячейке. Как это сделать, уже известно. Источник – имя диапазона: =деревья.
- Снимаем галочки на вкладках «Сообщение для ввода», «Сообщение об ошибке». Если этого не сделать, Excel не позволит нам вводить новые значения.
- Вызываем редактор Visual Basic. Для этого щелкаем правой кнопкой мыши по названию листа и переходим по вкладке «Исходный текст». Либо одновременно нажимаем клавиши Alt + F11. Копируем код (только вставьте свои параметры).
- Сохраняем, установив тип файла «с поддержкой макросов».
- Переходим на лист со списком. Вкладка «Разработчик» — «Код» — «Макросы». Сочетание клавиш для быстрого вызова – Alt + F8. Выбираем нужное имя. Нажимаем «Выполнить».
Когда мы введем в пустую ячейку выпадающего списка новое наименование, появится сообщение: «Добавить введенное имя баобаб в выпадающий список?».
Нажмем «Да» и добавиться еще одна строка со значением «баобаб».
Выпадающий список в Excel с данными с другого листа/файла
Когда значения для выпадающего списка расположены на другом листе или в другой книге, стандартный способ не работает. Решить задачу можно с помощью функции ДВССЫЛ: она сформирует правильную ссылку на внешний источник информации.
- Делаем активной ячейку, куда хотим поместить раскрывающийся список.
- Открываем параметры проверки данных. В поле «Источник» вводим формулу: =ДВССЫЛ(“Лист1!$A$1:$A$9”).
Имя файла, из которого берется информация для списка, заключено в квадратные скобки. Этот файл должен быть открыт. Если книга с нужными значениями находится в другой папке, нужно указывать путь полностью.
Как сделать зависимые выпадающие списки
Возьмем три именованных диапазона:
Это обязательное условие. Выше описано, как сделать обычный список именованным диапазоном (с помощью «Диспетчера имен»). Помним, что имя не может содержать пробелов и знаков препинания.
- Создадим первый выпадающий список, куда войдут названия диапазонов.
- Когда поставили курсор в поле «Источник», переходим на лист и выделяем попеременно нужные ячейки.
- Теперь создадим второй раскрывающийся список. В нем должны отражаться те слова, которые соответствуют выбранному в первом списке названию. Если «Деревья», то «граб», «дуб» и т.д. Вводим в поле «Источник» функцию вида =ДВССЫЛ(E3). E3 – ячейка с именем первого диапазона.
- Создаем стандартный список с помощью инструмента «Проверка данных». Добавляем в исходный код листа готовый макрос. Как это делать, описано выше. С его помощью справа от выпадающего списка будут добавляться выбранные значения.
- Чтобы выбранные значения показывались снизу, вставляем другой код обработчика.
- Чтобы выбираемые значения отображались в одной ячейке, разделенные любым знаком препинания, применим такой модуль.
Не забываем менять диапазоны на «свои». Списки создаем классическим способом. А всю остальную работу будут делать макросы.
Выпадающий список с поиском
- На вкладке «Разработчик» находим инструмент «Вставить» – «ActiveX». Здесь нам нужна кнопка «Поле со списком» (ориентируемся на всплывающие подсказки).
- Щелкаем по значку – становится активным «Режим конструктора». Рисуем курсором (он становится «крестиком») небольшой прямоугольник – место будущего списка.
- Жмем «Свойства» – открывается перечень настроек.
- Вписываем диапазон в строку ListFillRange (руками). Ячейку, куда будет выводиться выбранное значение – в строку LinkedCell. Для изменения шрифта и размера – Font.
Скачать пример выпадающего списка
При вводе первых букв с клавиатуры высвечиваются подходящие элементы. И это далеко не все приятные моменты данного инструмента. Здесь можно настраивать визуальное представление информации, указывать в качестве источника сразу два столбца.
Источник
Выпадающий календарь в Excel без макросов.
Смотрите также «additional controls», но выбранный месяц любого =ЕСЛИ(МЕСЯЦ(ДАТА(ГОД(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);» Excel, то уВызывается через правую кнопку
Office (Insert - открытым кодом VBAWindows Date Picker если нужны разные
этом в статье вставив смайлик, картинку, растянуть календарь на «Enter», а сочетание и годВ таблице, бланке, где таблицы Excel менялсяМожно сделать без там отсутствует «элемент года. Практически, вечный «; ДАТА(ГОД(B2);МЕСЯЦ(B2);1)- (ДЕНЬНЕД(ДАТА(ГОД(B2);МЕСЯЦ(B2);1);2)-1) вас есть много
мыши по ячейке Office Apps Store) — можно посмотретьАвтор даты из прошлого «Что такое диапазон фото, фигуру, т.д. лист формата А4, клавиш «Ctrl» +
нам поможет формула будем устанавливать такой автоматически» тут. макросов простой управления календарь». Подскажите календарь ;) +{0:1:2:3:4:5}*7+{1;2;3;4;5;6;7}-1)
или будущего, то в Excel». Как вставить и т.д. Получилось так.

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

долго. построить горизонтальную диаграмму, написать красивый текст, шрифта суббот и массива. Поучилось так. это такое, как чисел, названию месяца.
excel-office.ru
Как создать календарь в Excel формулой.
Как это сделать, . Для этого установим в «additional controls» даты в ячейке?=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),””, подключения всплывающих календарей удобного всплывающего значка и добавляет выбранную копировать код вСсылкаК сожалению, в стандартном
которая будет отражать т.д., смотрите в воскресений. Как установитьЗдесь получилась лишняя пустая ее вводить, читайтеВ списке месяцев смотрите в статье выпадающие списки.
появился «элемент управленияNic70y 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)
дату в любую каждый используемый файлУстанавливается как надстройка (есть арсенале средств Excel данные по шкале
статье «Как вставить
условное форматирование, читайте строка, но это в статье «Формулы можно название месяцев «Копирование в Excel»Как сделать выпадающие календарь»? Спасибо.

нет встроенного выпадающего времени. — это
в Excel фото, в статье «Условное в этом месяце. массива Excel» здесь.

Красивый дизайн, отображение количестваУмеет менять стандарты недели, на кнопку или Excel 200-2003 и календаря (в отличие диаграмму Ганта. Диаграмма картинку».


вложения и пользуйтесь: Ну я хочу формулу как формулу на любую дату даты от текущей. вводить не только универсальность хромает. 2007-2010 и, отдельно, еще и в планировании, отслеживании отдельных можно скачать здесь. форматированием настроить календарь
воскресенья, т.д., тогда Как это сделать,
Можно вместо названия Как присвоить имяСначала сделаем на на здоровье!
чтобы я нажав массива. Все выделенные с помощью всегоИспользует USA-стандарт недели (отображает дату, но и
Удобная система прокрутки лет для Excel 2013. последних версиях, начиная этапов работы какогоСкачать готовый вечный календарь так, что будет заняты все строки. сколько и каких месяца указать в диапазону списка, смотрите отдельном листе спискиOlga-22 на ячейку увидел
ячейки должны заполнится одной (правда, весьма неделю с воскресенья). время. и месяцев.Вызывается через контекстное меню с Excel 2007, -нибудь проекта. Мы в Excel на выделяться сегодняшнее числоПереходим к оформлению ячеек брать, т.д., списке номер месяца в статье «Диапазон в столбцах для: Скажите, а в
excel-office.ru
Всплывающий календарь
календарик и выбрал датами заданного в страшной с непривычки)Настроек нет.Есть возможность задавать темыРоссийскую неделю (с понедельника) ячейки (правой кнопкой Microsoft зачем-то убрала рассмотрели, как, с любой год шрифтом или цветом календаря. смотрите в статье с точкой – в Excel». выпадающего календаря. В
какую папку эти дату на нем, B2 месяца: формулы массива.Установка надстроек: оформления. знает. мыши по ячейке из стандартного комплекта помощью диаграммы Ганта,тут. ячейки.Объединим ячейки В20:Н20. «Как сделать календарь
01., 02. ИСмотрим в диспетчере одном столбце напишем два вложения импортировать? и она автоматическиОстанется только навести внешнийЧтобы ее использовать создайтев Excel 2003 иНет кнопки перехода кКаких-либо настроек нет. — Date Picker).
![]() |
поставки библиотеку mscalc.osx, сделать простой графикКак на основе Календарь работает так Установим формат, чтобы в Excel».
|
![]() |
чисел. Тогда получится «Формулы» перечень имен до 31. Во : Olga-22, Вы поacid26sk и скрыв день
|
![]() |
Дата в ячейке B2 Обзор (Tools - АвторАвтор до номера недели с календарем. Excel». смотрите в статье
|
![]() |
перед комментариями. : Почитайте тут: http://www.excelworld.ru/forum/2-3852-1 год в остальных тут важен тольков Excel 2007 и команды программистов ExcelЦена Автоматически подстраивается под российский не осталось без вводить даты вВ Excel можно на новый месяц.
|
P.S.
установить формулы в
- Например, в ячейке, функцию «(все форматы)».Теперь выделяем диапазон любой месяц любого «Проверка данных» на
- возрастания.:: Хочу сделать в окна В ячейках диапазонаФайл — Параметры -ЦенаСсылка в Office
planetaexcel.ru
Универсальный календарь формулой
понедельника). и экспертов Excel делать это вручную определенный диапазон ячеек, где написано «Апрель Ставим букву «Д» ячеек В22:Н27 и года (вечный календарь) закладке «Данные» вМы сделали вBlack__Hole ячейке Excel 2007Формат ячеек (Ctrl+1) B3:H3 могут быть Надстройки — Перейти: бесплатно Apps Store
Excel Date Picker MVP, которые оперативно неудобно. Для ввода
настроить формат, др. 2015» напишем «Май в строке «Тип». сразу нажимаем знак формулой. Смотрите статью разделе «Работа с списке года с: Скажите, а в выпадающий календарь для
: названия дней недели — Обзор (File
Сайт автора умер,Работает только в ExcelАвтор
создали несколько интерактивных именно сегодняшней даты
Чтобы при необходимости 2015». Появится календарь
Нажимаем «ОК». равно и пишем «Как создать календарь данными». Получились списки 1950 по 2050. какую папку эти ввода дат. СледуяТеперь, меняя дату в
в любом подходящем — Options - ссылки не работают, 2013, добавляется через: Jim Cone календарей на макросах можно воспользоваться функцией быстро найти эти на май 2015г.Теперь изменим ширину
формулу массива. в Excel формулой». с полосами прокрутки. Список годов можно два вложения импортировать?{/post}{/quote} пошаговой инструкции (по ячейке B2, мы формате.
planetaexcel.ru
Как сделать выбор даты в ячейке? (Формулы)
Add-ins — Go но можно скачать магазин приложений Office
Цена для удобного вводаСЕГОДНЯ (TODAY)
ячейки и изенитьВ календаре можно ячеек, цвет шрифта,=ЕСЛИ(МЕСЯЦ(ДАТА(ГОД(B20);МЕСЯЦ(B20);1))<>МЕСЯЦ(ДАТА(ГОД(B20);МЕСЯЦ(B20);1)-(ДЕНЬНЕД(ДАТА(ГОД(B20);МЕСЯЦ(B20);1);2)-1)+{0:1:2:3:4:5}*7+{1;2;3;4;5;6;7}-1);» «;ДАТА(ГОД(B20);МЕСЯЦ(B20);1)-(ДЕНЬНЕД(ДАТА(ГОД(B20);МЕСЯЦ(B20);1);2)-1)+{0:1:2:3:4:5}*7+{1;2;3;4;5;6;7}-1)Создать Получился такой менять, добавлять вВ проект -
разделу сайта «приёмы: будем получать по
Теперь выделите диапазон B4:H9 To — Browse)
excelworld.ru
Выпадающий календарь для ввода дат
заботливо сохраненную мной App Store на: бесплатно дат. Вот подборка, сочетанием клавиш или убрать формулы, отметить дату или заливки ячеек выходныхКогда ввели формулу,календарь ввыпадающий календарь в Excel него года. Смотрите файлы сами попадут выпадающий календарь для нашей формуле корректный и введите тудаЕсли вам нужен календарь
когда-то копию здесь. вкладкеСсылка неплохих, на мой
Ctrl+; диапазону присваивают имя. просто украсить календарь, дней, т.д. Можно
нажимаем не простоExcel на любой месяцбез макросов. статью «Чтобы размер в нужные папки
ввода дат») вызываю календарь на любой
вот такую формулу: на листе MicrosoftУстанавливается как надстройка.Вставка — Приложения для
Макрос (не надстройка!) с взгляд, бесплатных вариантов:или макросом, но
planetaexcel.ru
Подробнее читайте об
|
Отсутсвует функция календарь |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
Элемент управления пользовательской формы DTPicker (поле с календарем), предназначенный для выбора и ввода даты. Примеры кода VBA Excel с DTPicker.
UserForm.DTPicker – это элемент управления пользовательской формы, представляющий из себя отформатированное текстовое поле с раскрывающимся календарем, клик по выбранной дате в котором записывает ее в текстовое поле.
При вызове календаря пользовательская форма теряет фокус – это видно на изображении. При редактировании даты непосредственно в текстовом поле DTPicker, формат поля позволяет изменять элементы даты (день, месяц, год) по отдельности.
Чтобы перемещаться между элементами даты, необходимо, или выбирать элемент мышью, или нажимать любой знак разделителя («.», «,» или «/») на клавиатуре. А клик по знаку «+» или «-», соответственно, увеличит или уменьшит значение элемента даты на единицу.
Если в элемент «год» ввести однозначное число или двузначное число, не превышающее двузначный остаток текущего года, через пару секунд автоматически добавятся первые две цифры текущего столетия (20). Если вводимое двузначное число превысит двузначный остаток текущего года, автоматически добавятся первые две цифры прошлого столетия (19).
DTPicker – это сокращение от слова DateTimePicker, не являющегося в VBA Excel ключевым словом, как и DatePicker.
Добавление DTPicker на Toolbox
Изначально на панели инструментов Toolbox нет ссылки на элемент управления DTPicker, поэтому ее нужно добавить самостоятельно.
Чтобы добавить DTPicker на панель инструментов Toolbox, кликните по ней правой кнопкой мыши и выберите из контекстного меню ссылку «Additional Controls…»:
В открывшемся окне «Additional Controls» из списка дополнительных элементов управления выберите строку «Microsoft Date and Time Picker Control»:
Нажмите кнопку «OK» и значок элемента управления DTPicker появится на панели инструментов Toolbox:
Свойства поля с календарем
| Свойство | Описание |
|---|---|
| CalendarBackColor | Заливка (фон) календаря без заголовка. |
| CalendarForeColor | Цвет шрифта чисел выбранного в календаре месяца. |
| CalendarTitleBackColor | Заливка заголовка календаря и фон выбранной даты. |
| CalendarTitleForeColor | Цвет шрифта заголовка (месяц и год) и выбранного в календаре числа. |
| CalendarTrailingForeColor | Цвет шрифта чисел предыдущего и следующего месяца. |
| CheckBox | В значении True отображает встроенный в DTPicker элемент управления CheckBox. По умолчанию – False. |
| ControlTipText | Текст всплывающей подсказки при наведении курсора на DTPicker. |
| CustomFormat | Пользовательский формат даты и времени. Работает, когда свойству Format присвоено значение dtpCustom (3). |
| Day (Month, Year) | Задает или возвращает день (месяц, год). |
| DayOfWeek | Задает или возвращает день недели от 1 до 7, отсчет начинается с воскресенья. |
| Enabled | Возможность раскрытия календаря, ввода и редактирования даты/времени. True – все перечисленные опции включены, False – выключены (элемент управления становится серым). |
| Font | Шрифт отображаемого значения в отформатированном поле элемента управления. |
| Format | Формат отображаемого значения в поле элемента управления DTPicker, может принимать следующие значения: dtpCustom (3), dtpLongDate (0), dtpShortDate (1) (по умолчанию) и dtpTime (2). |
| Height | Высота элемента управления DTPicker с нераскрытым календарем. |
| Hour (Minute, Second) | Задает или возвращает часы (минуты, секунды). |
| Left | Расстояние от левого края внутренней границы пользовательской формы до левого края элемента управления. |
| MaxDate | Максимальное значение даты, которое может быть выбрано в элементе управления (по умолчанию – 31.12.9999). |
| MinDate | Минимальное значение даты, которое может быть выбрано в элементе управления (по умолчанию – 01.01.1601). |
| TabIndex | Определяет позицию элемента управления в очереди на получение фокуса при табуляции, вызываемой нажатием клавиш «Tab», «Enter». Отсчет начинается с нуля. |
| Top | Расстояние от верхнего края внутренней границы пользовательской формы до верхнего края элемента управления. |
| UpDown | Отображает счетчик вместо раскрывающегося календаря. True – отображается SpinButton, False – отображается календарь (по умолчанию). |
| Value | Задает или возвращает значение (дата и/или время) элемента управления. |
| Visible | Видимость поля с календарем. True – DTPicker отображается на пользовательской форме, False – DTPicker скрыт. |
| Width | Ширина элемента управления DTPicker с нераскрытым календарем. |
DTPicker – это сокращение от слова DateTimePicker, не являющегося в VBA Excel ключевым словом, как и DatePicker.
Примеры кода VBA Excel с DTPicker
Программное создание DTPicker
Динамическое создание элемента управления DTPicker с помощью кода VBA Excel на пользовательской форме с любым именем:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
Private Sub UserForm_Initialize() Dim myDTPicker As DTPicker With Me .Height = 100 .Width = 200 ‘Следующая строка создает новый экземпляр DTPicker Set myDTPicker = .Controls.Add(«MSComCtl2.DTPicker», «dtp», True) End With With myDTPicker .Top = 24 .Left = 54 .Height = 18 .Width = 72 .Font.Size = 10 End With Set myDTPicker = Nothing End Sub |
Данный код должен быть размещен в модуле формы. Результат работы кода:
Применение свойства CustomFormat
Чтобы задать элементу управления DTPicker пользовательский формат отображения даты и времени, сначала необходимо присвоить свойству Format значение dtpCustom. Если этого не сделать, то, что бы мы не присвоили свойству CustomFormat, будет применен формат по умолчанию (dtpShortDate) или тот, который присвоен свойству Format.
В данном примере создается пользовательский формат для полей с календарем DTPicker1 и DTPicker2, размещенных на пользовательской форме, и отображаются в них текущие дата и время.
|
Private Sub UserForm_Initialize() With DTPicker1 .Format = dtpCustom .CustomFormat = «Год: yyyy; месяц: M; день: d» .Value = Now End With With DTPicker2 .Format = dtpCustom .CustomFormat = «Часы: H; минуты: m; секунды: s» .Value = Now End With End Sub |
Результат работы кода:
Таблица специальных символов и строк, задающих пользовательский формат даты и времени (регистр символов имеет значение):
| Символы и строки | Описание |
|---|---|
| d | День месяца из одной или двух цифр. |
| dd | День месяца из двух цифр. К числу из одной цифры впереди добавляется ноль. |
| ddd | Сокращенное название дня недели из двух символов (Пн, Вт и т.д.). |
| dddd | Полное название дня недели. |
| h | Час из одной или двух цифр в 12-часовом формате. |
| hh | Час из двух цифр в 12-часовом формате. К часу из одной цифры впереди добавляется ноль. |
| H | Час из одной или двух цифр в 24-часовом формате. |
| HH | Час из двух цифр в 24-часовом формате. К часу из одной цифры впереди добавляется ноль. |
| m | Минута из одной или двух цифр. |
| mm | Минута из двух цифр. К минуте из одной цифры впереди добавляется ноль. |
| M | Месяц из одной или двух цифр. |
| MM | Месяц из двух цифр. К месяцу из одной цифры впереди добавляется ноль. |
| MMM | Сокращенное название месяца из трех символов. |
| MMMM | Полное название месяца. |
| s | Секунда из одной или двух цифр. |
| ss | Секунда из двух цифр. К секунде из одной цифры впереди добавляется ноль. |
| y | Год из одной или двух последних цифр. |
| yy | Год из двух последних цифр. |
| yyyy | Год из четырех цифр. |
Создание границ интервала дат
Простенький пример, как задать интервал дат с начала месяца до текущего дня с помощью двух элементов управления DTPicker:
|
Private Sub UserForm_Initialize() DTPicker1.Value = Now DTPicker1.Day = 1 DTPicker2.Value = Now End Sub |
Результат работы кода, запущенного 23.11.2020:
DTPicker – это сокращение от слова DateTimePicker, не являющегося в VBA Excel ключевым словом, как и DatePicker.
Автор:
Обновлено: 28.05.2018
Календари — неотъемлемая часть нашего быта, без которого современному человеку не обойтись и хотя их очень много и они есть везде — и в телефонах и в компьютерах, иногда возникает необходимость в создании своего специализированного календаря. Наверное, лучше начать с более простых способов.
Как сделать календарь в Excel
Содержание
- Создание календаря из шаблона
- Специализированный календарь для работы и дежурств
- Видео — Как сделать календарь в Excel самостоятельно
Создание календаря из шаблона
В Excel есть множество встроенных шаблонов, в том числе и для календарей. Это очень удобно, поскольку эти шаблоны очень разные и скорее всего, то, что вы собираетесь сделать, уже подготовлено другими людьми. Главное преимущество заготовок — их работоспособность. Они созданы с учетом всех правил и принципов Excel, их не придется перенастраивать, а значит, не придется вникать во все тонкости и сложности этого дела.
Шаг 1. Для начала запустите программу и откройте в меню «Файл».
Открываем в меню «Файл»
Шаг 2. Перейдите в раздел «Создать». Теперь воспользуйтесь поиском или нажмите на ссылку «Календари», чтобы просмотреть все доступные варианты.
Переходим в раздел «Создать», нажимаем на ссылку «Календари»
Как видите, в программе много разных встроенных календарей. Они скомпонованы по категориям, что облегчит поиск. Найдите подходящий шаблон. Не обращайте внимание на стиль и цветовое решение, все это можно будет с легкостью изменить. Ориентируйтесь на формат календаря и возможности, которые он предлагает.
В разделе «Категория» выбираем подходящий нам шаблон календаря
Шаг 3. Щелкните по миниатюре понравившегося вам шаблона. Скачайте его, нажав на кнопку «Создать».
Щелкаем по миниатюре понравившегося шаблона, нажимаем на кнопку «Создать»
Шаг 4. Теперь выбранный вами шаблон откроется в новом окне.
Шаблон выбранного календаря откроется в программе Excel
Измените его по своему усмотрению, добавьте свои данные и др. Теперь это будет лично ваш календарь с дополнительными возможностями.
Меняем календарь по своему усмотрению, вносим свои данные
Важно! Не забудьте сохранять свою таблицу каждый раз, когда вы вносите в нее какие-либо изменения.
Есть смысл загрузить этот документ на Google Docs. Это облачное хранилище файлов любого типа со встроенным пакетом программ, аналогичным Microsoft Office. Загрузив его на облако, вы сможете получить доступ к своему календарю в любое время с любого компьютера, редактировать его онлайн самостоятельно и вместе с другими людьми, но самый важный плюс — это автосохранение, любые действия с таблицей будут сохраняться системой.
Специализированный календарь для работы и дежурств
Создание нового календаря каждый месяц — пустая трата времени, но многие люди делают это, так как думают, что им придется перестраивать его, чтобы получить правильные выходные и праздничные дни. Но на самом деле, с несколькими формулами, 2 условными правилами форматирования, 1 выпадающим списком и 5 строками кода VBA, вы можете создать автоматический календарь, который не придется менять.
Шаг 1. Создания списка месяцев. Начнем с написания имени сотрудников в столбце A.
Заполняем имена сотрудников в столбце А
Перед тем как переходить к следующему этапу убедитесь, что на вашей панели инструментов есть раздел «Разработчика». Если нет, добавьте его:
- Перейдите в меню «Файл»>«Параметры».
Открываем в меню «Файл»
В самом низу открываем пункт «Параметры»
- Нажимаете на параметр «Настройки ленты».
Нажимаем на параметр «Настроить ленту»
- Проверьте параметр «Разработчика» в правой панели.
Проверяем вкладку «Разработчик», если нет галочки ставим, нажимаем «ОК»
Шаг 2. Теперь выберите «Разработчик»> «Вставка»> «Поле со списком».
Открываем в меню на вкладку «Разработчик»
Нажимаем на кнопку «Вставить»
В открывшемся меню выбираем элемент «Поле со списком»
Значок «Поле со списком» передвигаем с помощью мыши в нужное место
Шаг 3. Теперь нам нужно создать список месяцев в другом месте на нашем листе.
Создаем список месяцев, вписывая название в ячейки, как на картинке
Шаг 4. Теперь подключите, ранее созданный элемент «Поле со списком» с этим списком месяцев:
- Выберите объект «Поле со списком».
Выбираем объект «Поле со списком»
- Щелкните по нему и выберите «Формат объекта».
Кликаем на элемент правой кнопкой мыши, выбираем «Формат объекта»
- Введите диапазон месяцев (в этом примере «BC1:BC12»).
В поле вводим первый и последний номер ячеек с указанными месяцами
- В разделе «Связь с ячейкой» выберите A1.
В разделе «Связь с ячейкой» вписываем A1, нажимаем «ОК»
Шаг 5. Поле со списком для каждого года.
Сделайте все точно так же, как и в предыдущем шаге, но вместо месяцев введите года, которые вам нужны. В разделе «Связь с ячейкой» укажите A2.
В разделе «Связь с ячейкой» указываем A2
Список для каждого месяца и года готов
Шаг 6. Впишите первую дату посредством функции. Здесь мы собираемся повторно использовать элементы A1 (выбранный месяц) и A2 (выбранный год) и поместить их в функцию «DATE». Эта функция выглядит следующим образом: «=ДАТА(год; месяц; день)».
Итак, в качестве года указываем A2+2017 (A2 содержит цифру 1, чтобы получить 2018, нам нужно прибавить к ней 2017), а в качестве месяца — A1. Впишите получившуюся формулу в ячейку B6 «=ДАТА (A2+2017;A1;1).
Впиcываем получившуюся формулу в ячейку B6 «= ДАТА (A2+2017; A1;1)»
Результат формулы
Шаг 7. Растяните дату на нужное число столбцов.
Этот шаг очень прост. Мы просто должны добавить 1 к предыдущей ячейке, чтобы увеличить день на 1. В C6, напишите следующую формулу и скопируйте ее во все остальные ячейки. Формула «= B6+1».
Примечание! Чтобы растянуть формулу, а другие ячейки, схватите B6 за зеленый квадратик и буквально растяните его на нужное число ячеек.
В ячейку С6 вводим формулу «=B6+1»
Хватаем B6 за зеленый квадратик и тянем его на нужное количество ячеек
Ячейки заполнились автоматически
Шаг 8. Измените формат даты.
Теперь мы сосредоточимся на формате даты. У нас уже есть год и месяц в верхнем левом углу, поэтому нам не нужна эта информация в ячейках. Можно изменить формат даты в строке 6, чтобы отображался только день. Мы хотим отобразить короткое имя дня, а также цифру.
- Выберите все даты.
Левой кнопкой мыши выделим все ячейки с датами
- Откройте окно «Формат ячеек» («Ctrl+1» или щелкните по выбранным ячейкам и выберите соответствующий раздел).
Щелкаем правой кнопкой мыши на выделенном фрагменте, выбираем в меню «Формат ячеек»
Во вкладке «Число», выбираем пункт «Дата», в правой части окна выбираем необходимый формат даты, нажимаем «ОК»
Шаг 9. Теперь вам остается только отформатировать таблицу по своему усмотрению, изменить цвет фона и шрифты.
Календарь готов, форматируем его по своему усмотрению
Читайте интересную информацию из нашей новой статьи — «Как написать формулу в Excel? Обучение азам работы в Excel».
Видео — Как сделать календарь в Excel самостоятельно
Рекомендуем похожие статьи












































































































































