Как вставить время в Excel
![](http://officeassist.ru/wp-content/uploads/19366/tmp-17ab1841-db22-4802-98dd-c99d36c73973-360x245.jpg)
Часы в ячейке Excel
Приветствую, уважаемый читатель!
Сегодня темой поста будет вопрос одного из подписчиков: «Как вставить в ячейку таблицы время?» Вопрос требует некоторого пояснения. Нам требуются полноценные часы, которые будут отображать текущее время на компьютере.
Пришедшие поначалу в голову формулы СЕГОДНЯ() , ДАТА() и ВРЕМЯ() здесь не помогут, так как они будут оставлять «отпечатки» сегодняшних дней, дат, часов и секунд на момент ввода формулы. Также формулы не поддерживают автоматическое обновление.
Выход один — будем использовать макросы.
Пройдёмся по этапам создания нашей процедуры:
- Создадим новую книгу в Excel;
- На вкладке «Разработчик» жмём кнопку VisualBasic;
- Выполним команды Insert -> Module.
![Часы в ячейке Excel](http://officeassist.ru/wp-content/uploads/19366/tmp-17ab1841-db22-4802-98dd-c99d36c73973.jpg)
Появится пустое окно куда нужно поместить следующий макрос:
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](http://officeassist.ru/wp-content/uploads/19366/tmp-a1cb97ba-d1b7-4d3a-aa69-1e7ff1f5b260.jpg)
Мы создали макрос записи обновления времени, который поместит в ячейку А1 текущее время, его можно будет вызвать сочетанием Alt+F8 или щёлкнуть по кнопке «Макросы».
![Часы в ячейке Excel](http://officeassist.ru/wp-content/uploads/19366/tmp-017d3d6e-3d51-47d6-8e43-59a120b04ec3.jpg)
Следующим шагом будет сохранение книги. Обязательно сохранить книгу с поддержкой макросов (.xlsm)!
После выполнения макроса увидим вот такой результат:
![Часы в ячейке Excel](http://officeassist.ru/wp-content/uploads/19366/tmp-e4f65507-c7a9-4165-825c-9454395d802d.jpg)
В ячейке отображается дата и время (по компьютеру), в строчке формул также добавляются секунды для более удобного просмотра.
В этом примере есть также один минус — как только мы закроем книгу, работа макроса прекратится. Для того, чтобы избежать этого мы прикрутим к макросу автоматический старт (как и в случае с КУРСАМИ ВАЛЮТ).
- Щёлкаем кнопку VisualBasic;
- В области Project два раза кликаем строчку «Эта книга»;
- В появившемся окне в поле «Object» выбираем «Workbook» и в поле «Procedure» название процедуры «Open»;
- Между появившихся строчек вводим вызов нашего макроса — Call UpdateTime.
![Часы в ячейке Excel](http://officeassist.ru/wp-content/uploads/19366/tmp-00f5807d-50b1-411f-803a-c0b7f943a36c.jpg)
Макрос можно переместить в любую ячейку. Теперь даже при закрытии/открытии у нас будет точное время!