我正在尝试在VBA中获取RTD输出。问题是数据有时需要几秒才能恢复,因此当我运行一个循环时,它会错误地返回0。显然RTD是异步运行的。如何将其设置为同步运行以便等待正确的输出?
如果我把公式放在一个单元格中,它通常会立即返回,有时需要一秒钟。如果我尝试在VBA中循环,它会过快地转到下一个值并返回误报,因为它没有等待数据返回。我已经尝试过RTD.RefreshData,它加载速度不够快,无法跟上我的循环。 (我的目标是使用RTD遍历数千个字段,这就是我需要这样做的原因)
答案 0 :(得分:1)
如何在循环中等待满足条件:
Do Until Cells(1, 1) <> "" ' use plausible condition
Application.Wait (Now + TimeValue("0:00:01"))
Loop