Можно ли запускать макрос с определённой периодичностью?

Программирование на Visual Basic for Applications
Илья
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 03.04.2003 (Чт) 17:44

Можно ли запускать макрос с определённой периодичностью?

Сообщение Илья » 03.04.2003 (Чт) 17:51

Добрый день!
Вот у меня такой вопрос. В Excel есть какие-то значения в ячейках. И нужно сделать так, чтобы эти значения определённым образом пересчитывались каждые 5 секунд.
Нужно ли для этого перезапускать макрос каждые пять минут. Или достаточно сделать такой макрос, который бы это делал?
И ещё вопрос.
Вот есть значение в ячейке. В какой-то момент времени оно меняется. Нужно отследить время, когда оно изменилось.
Или при изменении значения запустить какое-нибудь действие.
Возможно ли это сделать с помощью Vb?
Всем спасибо за внимание,
С уважением,
Илья.
Все ответы присылайте на outint@pisem.net или пишите сюда.

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 03.04.2003 (Чт) 18:36

Обрабатывай сообщение Worksheet_Change ;)

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 04.04.2003 (Пт) 8:34

Ну да :)
А что касается запуска макроса через равные промежутки, то делается это так.
В текст макроса, подлежащего запуску, ставится команда Application.OnTime Now + TimeValue("00:05:00"), "MyMacrosName". Макрос вручную запускается - и всё, он будет самозапускаться каждые 5 минут.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Сообщение Vitaly1 » 04.04.2003 (Пт) 10:51

Не совсем так:
Application.OnTime Now + TimeValue("00:05:00"), "MyMacrosName"

запустит макрос через 5 минут от текущего времени, что бы макрос запустился снова, необходимо перед end sub макроса, поставить
Application.OnTime Now + TimeValue("00:05:00"), "MyMacrosName"
тогда, макрос будет продолжать запускать сам себя через 5 минут.
[/quote]

Илья
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 03.04.2003 (Чт) 17:44

Сообщение Илья » 05.04.2003 (Сб) 9:59

Ребята, большое спасибо!
Я не программист и вобщем-то не собираюсь этим заниматься. Просто иногда сталкиваюсь с техническими проблемами на работе.
Очень приятно, что мне ответили так быстро и доступно.
Ещё раз спасибо. Добавлю vbstreets в папку Favorites :)))

С уважением,
Илья.


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 26

    TopList