1

У меня есть файл Excel 2010, содержащий автообновление ячеек с RTD. Пример ячейки:

=RTD("xxx";"yyy")

Мне нужно извлечь (в файл .txt) значения этих ячеек, каждые X минут. Мой файл .txt ДОЛЖЕН содержать обновленное значение.

Я попробовал с макросом. Этот макрос экспортирует каждые X минут текстовый файл из файла Excel. Проблема в том, что при запуске макроса ячейки не обновляются: значения остаются теми же, что и до запуска макроса. Похоже, макрос запрещает обновление.

Как я могу сделать?

Спасибо.

2 ответа2

1

От вашего вопроса, я думаю, у вас есть какой-то цикл синхронизации в вашем макросе, который ждет времени задержки перед регистрацией, но макрос продолжает работать.

Если это так, то лучше использовать Application.OnTime которые позволяют планировать запуск макроса в определенное время. в промежуточный контроль возвращается, чтобы преуспеть нормально

Для начала вот схема

Sub YourSub()
    <do your logging stuff>

    if not <terminal condition> then
        Application.OnTime Now + TimeValue("XX:XX:XX"), "YourSub" 
    end if
end sub
1

Сначала перейдите в меню « File в Excel и нажмите « Options . В разделе Formulas > Calculation Options > Workbook Calculation выберите Manual . Теперь вы можете добавить простую команду в код VBA для обновления ваших ячеек. Эта команда - Application.Calculate (или просто Calculate). Надеюсь, это поможет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .