我使用 Excel 工作表,通过宏将 HTTP Post 请求发送到 API,该宏设置为每隔几秒运行一次。虽然这目前有效,但工作表如此频繁地变得无响应是相当不方便的。有没有其他方法可以在 VBA 之外执行此操作,或者我最好在另一个程序中实现此工作表的功能吗?
我相信我看到 POST 请求可以使用 Powerquery 完成,但我不确定 Powerquery 对此类任务的支持有多好。
如果你想使用异步数据请求,你必须编写你的系统来处理异步数据事件。如果您在 Excel 内部、Excel 外部或任何其他应用程序中执行此操作,情况都是一样的。
如果您使用的是 XMLHTTP 控件,则有一个 XMLHTTP.onreadystatechange 事件可以触发命名回调函数
FWIW:从 Excel 进行异步数据调用的原始方法是使用 DDE。您运行一个单独的 DDE 服务器,它可以按照需要的方式同步,而 Excel 仅处理异步 DDE。过去,整个华尔街都是这样运作的。