Подскажите, как можно вставить время в ячейку (Например В21) время, в котором будет отражаться и часы, и минуты, и секунды, которые будут меняться в зависимости от системного времени компьютера? (т.е. чтоб каждую секунду время в ячейку менялось))
Подскажите, как можно вставить время в ячейку (Например В21) время, в котором будет отражаться и часы, и минуты, и секунды, которые будут меняться в зависимости от системного времени компьютера? (т.е. чтоб каждую секунду время в ячейку менялось))Денис
Примеры макросов можно поискать на форуме по строке OnTime
А сделать примерно так (см.в прилагаемом файле): [vba]
Код
'код в модуль книги (ЭтаКнига) Private Sub Workbook_Open() Application.OnTime Now + TimeSerial(0, 0, 1), "ShowWatch" End Sub
'код в общий модуль (Module1) Sub ShowWatch() Sheets(1).Range("A1").Value = Now - Date Application.OnTime Now + TimeSerial(0, 0, 1), "ShowWatch" End Sub
[/vba] Ну, и конечно на ячейку со временем надо наложить формат времени (вручную).
Примеры макросов можно поискать на форуме по строке OnTime
А сделать примерно так (см.в прилагаемом файле): [vba]
Код
'код в модуль книги (ЭтаКнига) Private Sub Workbook_Open() Application.OnTime Now + TimeSerial(0, 0, 1), "ShowWatch" End Sub
'код в общий модуль (Module1) Sub ShowWatch() Sheets(1).Range("A1").Value = Now - Date Application.OnTime Now + TimeSerial(0, 0, 1), "ShowWatch" End Sub
[/vba] Ну, и конечно на ячейку со временем надо наложить формат времени (вручную).Gustav
по-сути, одно и то же, но здесь есть один суть важный момент - выключение запланированного события [vba]
Код
Private NextTick As Date
Sub Ввод_времени() ' Обновляет содержимое ячейки A1 текущим временем Cells(1, 1) = Time ' Запускает следующее событие через секунду после настоящего NextTick = Now + TimeValue("00:00:01") Application.OnTime NextTick, "Ввод_времени" End Sub
Sub Остановка_времени() On Error Resume Next Application.OnTime NextTick, "Ввод_времени", , False End Sub
[/vba]
по-сути, одно и то же, но здесь есть один суть важный момент - выключение запланированного события [vba]
Код
Private NextTick As Date
Sub Ввод_времени() ' Обновляет содержимое ячейки A1 текущим временем Cells(1, 1) = Time ' Запускает следующее событие через секунду после настоящего NextTick = Now + TimeValue("00:00:01") Application.OnTime NextTick, "Ввод_времени" End Sub
Sub Остановка_времени() On Error Resume Next Application.OnTime NextTick, "Ввод_времени", , False End Sub
Дата: Воскресенье, 30.12.2012, 12:40 |
Сообщение № 5
Группа: Гости
Здравствуйте!
С наступающим!
А как сделать в ячейке a1 оставшееся время (обратный отсчет с точностью до секунды - конечная дата указывается в макросе) для макроса в файле 5083714.xls из поста #3?
Спасибо.
Здравствуйте!
С наступающим!
А как сделать в ячейке a1 оставшееся время (обратный отсчет с точностью до секунды - конечная дата указывается в макросе) для макроса в файле 5083714.xls из поста #3?
Дата: Воскресенье, 30.12.2012, 15:59 |
Сообщение № 7
Группа: Гости
Спасибо, но, в результате отображается время до конца сегодняшнего дня, а по идее должно было прибавить еще 24 часа. При изменении параметра DateSerial(2013, 1, 2), количество оставшегося времени остается неизменным - чуть более 8 ч.
Спасибо, но, в результате отображается время до конца сегодняшнего дня, а по идее должно было прибавить еще 24 часа. При изменении параметра DateSerial(2013, 1, 2), количество оставшегося времени остается неизменным - чуть более 8 ч.DateSerial
Sub ShowWatch() Sheets(1).Range("N6").Value = Now - Date Sheets(1).Range("N13").Value = Now - Date Sheets(1).Range("N16").Value = Now - Date Sheets(1).Range("N20").Value = Now - Date Sheets(1).Range("N36").Value = Now - Date Sheets(1).Range("N24").Value = Now - Date Sheets(1).Range("N36").Value = Now - Date Sheets(1).Range("N41").Value = Now - Date Sheets(1).Range("N46").Value = Now - Date Application.OnTime Now + TimeSerial(0, 0, 1), "ShowWatch" End Sub
[/vba]
Изменяющее время в Excel указанных ячейках показывает. Я работаю от Москвы до Калининграда мне надо чтобы в разных ячеках показывало время по в зависимости от часового пояса. Пример - Sheets(1).Range("N41").Value = Now + 1 (где 1 это +1 час) Подскажите плиззз
Доброго дня!!!
Макрос запрограммировал так: [vba]
Код
Sub ShowWatch() Sheets(1).Range("N6").Value = Now - Date Sheets(1).Range("N13").Value = Now - Date Sheets(1).Range("N16").Value = Now - Date Sheets(1).Range("N20").Value = Now - Date Sheets(1).Range("N36").Value = Now - Date Sheets(1).Range("N24").Value = Now - Date Sheets(1).Range("N36").Value = Now - Date Sheets(1).Range("N41").Value = Now - Date Sheets(1).Range("N46").Value = Now - Date Application.OnTime Now + TimeSerial(0, 0, 1), "ShowWatch" End Sub
[/vba]
Изменяющее время в Excel указанных ячейках показывает. Я работаю от Москвы до Калининграда мне надо чтобы в разных ячеках показывало время по в зависимости от часового пояса. Пример - Sheets(1).Range("N41").Value = Now + 1 (где 1 это +1 час) Подскажите плизззАртём СРОЧНО ПОМОГИТЕ !!!