#excel #vba #excel-web-query
#преуспеть #vba #excel-веб-запрос
Вопрос:
Я выполняю запрос мощности Excel в цикле. Запрос выполняется.
По причине, связанной с Интернетом (я не нахожусь в зоне, покрытой оптоволокном), запрос не загружает данные, возвращая ошибку тайм-аута.
Учитывая, что возможно, что весь цикл цикла не завершен, я хотел бы остановить обновление до появления ошибки и возобновить работу с кодом, несмотря на то, что данные не были загружены.
Код прерывается там, где он показан на рисунке.
Как я могу заставить код продолжать работать до того, как появится тайм-аут?
Допустим, я хотел бы, чтобы код продолжал выполняться, если через 90 секунд данные не могут быть загружены.
Ответ №1:
Почему бы вам не попробовать изменить период обновления?
Вы также можете попробовать просмотреть код, сгенерированный Power Query, сняв флажок «Включить фоновое обновление» в Data -> Connection -> Properties .
Вы также можете добавить тайм-аут по вашему выбору. Вы можете добавить этот бит после определения URL-адреса
, [Timeout = #duration (X,Y,Z,N)]
Где X — Дни, Y — часы, Z — минуты, N — секунды
В противном случае, если вы действительно заинтересованы в уничтожении веб-запроса по истечении 100 секунд по умолчанию, то перед запуском кода вы можете поместить эту строку
On Error Resume Next
Комментарии:
1. Большое спасибо! именно то, что я искал. Строки кода, которыми вы поделились, делают свое дело!