Как вставить время в Excel

Часы в ячейке Excel

Приветствую, уважаемый читатель!

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

Пришедшие поначалу в голову формулы СЕГОДНЯ() , ДАТА() и ВРЕМЯ() здесь не помогут, так как они будут оставлять «отпечатки» сегодняшних дней, дат, часов и секунд на момент ввода формулы. Также формулы не поддерживают автоматическое обновление.

Выход один — будем использовать макросы.

Пройдёмся по этапам создания нашей процедуры:

  1. Создадим новую книгу в Excel;
  2. На вкладке «Разработчик» жмём кнопку VisualBasic;
  3. Выполним команды Insert -> Module.
Часы в ячейке Excel

Появится пустое окно куда нужно поместить следующий макрос:

Sub UpdateTime()

Dim varNextCall As Variant

‘записываем в ячейку текущее время Cells(1, 1).Value = Now

‘записываем в varNextCall время, когда вызвать макрос в следующий раз (через 1 секунду) varNextCall = TimeSerial(Hour(Now), Minute(Now), Second(Now) +1)

‘уведомляем программу в вызове макроса Application.Ontime varNextCall, «UpdateTime»

End Sub

Часы в ячейке Excel

Мы создали макрос записи обновления времени, который поместит в ячейку А1 текущее время, его можно будет вызвать сочетанием Alt+F8 или щёлкнуть по кнопке «Макросы».

Часы в ячейке Excel

Следующим шагом будет сохранение книги. Обязательно сохранить книгу с поддержкой макросов (.xlsm)!

После выполнения макроса увидим вот такой результат:

Часы в ячейке Excel

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

В этом примере есть также один минус — как только мы закроем книгу, работа макроса прекратится. Для того, чтобы избежать этого мы прикрутим к макросу автоматический старт (как и в случае с КУРСАМИ ВАЛЮТ).

  1. Щёлкаем кнопку VisualBasic;
  2. В области Project два раза кликаем строчку «Эта книга»;
  3. В появившемся окне в поле «Object» выбираем «Workbook» и в поле «Procedure» название процедуры «Open»;
  4. Между появившихся строчек вводим вызов нашего макроса — Call UpdateTime.
Часы в ячейке Excel

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

Поделиться:
Нет комментариев

Добавить комментарий

Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.

×
Рекомендуем посмотреть