Перейти к содержимому

Как вызвать календарь при нажатии на определенную ячейку в Excel?

Author: Siluvia Last Modified: 2025-06-05

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


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

Пожалуйста, решите эту проблему пошагово следующим образом.

Примечание: Этот метод работает только в Microsoft Excel 32-бит.

Шаг 1: Создайте пользовательскую форму с календарем

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

1. Нажмите клавиши Alt + F11 одновременно, чтобы открыть окно Microsoft Visual Basic for Applications.

2. В окне Microsoft Visual Basic for Applications нажмите Вставить > Пользовательская форма.

 click Insert > UserForm

3. Затем появятся окна Пользовательской формы и Панели инструментов. На панели инструментов щелкните любой элемент управления правой кнопкой мыши и выберите Дополнительные элементы управления из контекстного меню. См. скриншот:

click any one control and right click, then select Additional Controls

4. В диалоговом окне Дополнительные элементы управления прокрутите вниз до пункта Microsoft MonthView Control в поле Доступные элементы управления и нажмите кнопку ОК.

check the Microsoft MonthView Control option

5. После этого вы увидите, что кнопка MonthView добавлена в окно Панели инструментов. Щелкните эту кнопку MonthView, а затем щелкните на окне UserForm1, чтобы создать календарь в форме пользователя.

create a Calendar in the Userform

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

6. Дважды щелкните вставленный календарь в UserForm1, и в окне Кода замените исходный код следующим сценарием VBA.

Код VBA: создание пользовательской формы с календарем

Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
 On Error Resume Next
   Dim xRg As Object
   For Each xRg In Selection.Cells
      xRg.Value = DateClicked
   Next xRg 
   Unload Me
End Sub

Примечание: Этот код поможет вставить дату в выбранную ячейку после выбора даты из календаря.

copy and paste the code into the module

Шаг 2: Активируйте календарь при нажатии на ячейку

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

7. Дважды щелкните имя листа, содержащего ячейки, которые будут вызывать календарь, в левой панели Проекта, затем скопируйте и вставьте следующий код VBA в окно Кода. См. скриншот:

Код VBA: Нажмите на ячейку, чтобы вызвать календарь

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If (Target.Count = 1) Then
    If Not Intersect(Target, Range("A2:A10")) Is Nothing Then UserForm1.Show
    End If
End Sub

Примечание: в коде A2:A10 — это ячейки, при нажатии на которые будет вызываться календарь. Измените диапазон ячеек по необходимости.

copy and paste the code into the sheet module

8. Нажмите клавиши Alt + Q одновременно, чтобы закрыть окно Microsoft Visual Basic for Applications.

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

when clicking on any cell inside the specified range, a calendar will pop up


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

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

Kutools для Excel предлагает более 300 продвинутых функций для упрощения сложных задач, повышая креативность и эффективность. Интеграция с возможностями ИИ позволяет Kutools автоматизировать задачи с высокой точностью, делая управление данными без усилий. Подробная информация о Kutools для Excel...  Бесплатная пробная версия...

1. Нажмите Kutools > Текст > Включить выбор даты.

click Enable Date Picker feature

2. После активации этой функции нажмите на ячейку с датой, и справа от ячейки появится значок календаря.

click on a date cell, and a calendar icon will pop up

3. Нажмите на значок календаря, чтобы открыть диалоговое окно Выбор даты, а затем нажмите новую дату, чтобы заменить дату в выбранной ячейке.

Click the calendar icon to open the Date Picker dialog box

Примечания:

  • Undo button Кнопка Отмена: Нажмите эту кнопку, чтобы отменить замену даты;
  • Close button Кнопка Закрыть: Нажмите эту кнопку, чтобы закрыть диалоговое окно Выбор даты;
  • Эта функция может применяться только к ячейкам, содержащим дату.

  Если вы хотите воспользоваться бесплатной пробной версией (30-день) этой утилиты, пожалуйста, нажмите, чтобы скачать её, а затем перейдите к выполнению операции согласно вышеуказанным шагам.


Связанные статьи:

Лучшие инструменты для повышения продуктивности работы с Office

🤖 Kutools AI Aide: Совершенно новый подход к анализу данных на основе: Интеллектуальное выполнение |  Генерация кода  |  Создание пользовательских формул |  Анализ данных и построение диаграмм  |  Вызов Расширенных функций Kutools
Популярные функции: Найти, выделить или отметить дубликаты | Удалить пустые строки | Объединить столбцы или ячейки без потери данных |   Округлить без формулы ...
Супер ПОИСК: VLOOKUP по нескольким критериям | VLOOKUP с несколькими значениями | Многолистовой поиск | Распознавание нечетких соответствий ....
Расширенный раскрывающийся список: Быстро создать раскрывающийся список | Зависимый раскрывающийся список | Множественный выбор в раскрывающемся списке ....
Менеджер столбцов: Добавить определённое количество столбцов | Переместить столбцы | Переключить видимость скрытых столбцов | Сравнить диапазоны и столбцы ...
Избранные функции: Сетка фокусировки | Дизайн листа | Улучшенная строка формулы | Управление книгами и листами | Библиотека автотекста | Выбор даты | Объединить данные | Шифрование/расшифровка ячеек | Отправить письмо по списку | Супер фильтр | Специальный фильтр (фильтр ячеек с жирным/курсивом/зачёркнутым...) ...
Топ-15 наборов инструментов:12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...) |50+ типов диаграмм (Диаграмма Ганта, ...) |40+ практических формул (Расчет возраста на основе даты рождения, ...) |19 инструментов вставки (Вставить QR-код, Вставить изображение по пути, ...) |12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...) |7 инструментов для объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...) | ... и многое другое

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


Office Tab добавляет вкладки в Office и делает вашу работу намного проще

  • Включите редактирование и чтение с вкладками в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна, а не в отдельных окнах.
  • Увеличьте свою продуктивность на50% и сократите сотни лишних кликов мышью каждый день!