1 (изменено: ThisIsStart, 2022-05-03 20:03:35)

Тема: VBA: Excel - Автоматическое обновление запросов

Добрый день.
Возможно ли реализовать в VBA автоматическое обновление всех данных(из txt файла) каждые 5 секунд? В настройках excel'а минимум это 1 минута, но это слишком много. Пытался реализовать разными способами, но либо компилятор ругался с ошибками или на ссылку на несуществующий макрос(хотя они лежат в одном коде), либо excel вис на все 5 секунд, обновлял данные и снова вис.
Можно как-то осуществить это через таймер или с помощью AHK?
Только не простой эмуляцией нажатий, должна остаться возможность использовать компьютер и другие вкладки.
В AHK есть замечательная функция:

SetTimer

Если AHK способен заставлять excel обновлять данные по этому таймеру было бы супер, зависание excel'a на пол секунды вполне допустимо.
Не знаю где было бы правильнее создавать тему, здесь или в AutoHotKey. Если создал неправильно- сообщите, я пересоздам.

2

Re: VBA: Excel - Автоматическое обновление запросов

В VBA не знаю (скорее всего можно), в AHK точно можно.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3

Re: VBA: Excel - Автоматическое обновление запросов

teadrinker,  я попробовал вот так:


filepath := ("C:\Users\user\Desktop\p\ex.xlsx")
objExcel := ComObjCreate("Excel.Application")
WorkBook := objExcel.Workbooks.Open(filepath)
Workbook.RefreshAll

Код запускается, скрипт выполняет свою основную задачу и по идее должен в конце обновлять excel. Но этого не происходит. Ошибок никаких не выдает.

4

Re: VBA: Excel - Автоматическое обновление запросов

Это на каком языке? Если на AHK, должно быть в соответствующей ветке.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder