如何在 python 中集成 Excel =RTD() 函数



我正在使用来自专有应用程序的实时数据,该应用程序提供实时天气数据。我从数据中知道的是,它提供了一个导入到 excel 的链接,如下所示:

=RTD("4cast.wetter",,"city","parameter")此参数包括温度、湿度、风速、降雨量等。

我尝试阅读 excel 文档中提供的支持链接,但无法获得它是否可以与 Python 一起使用。http://support.microsoft.com/kb/289150

所以现在我真正的目的是直接在 Python 中使用 excel 中 RTD 函数接收的这些数据。

如 RTD 文档中所述,"调用组件对象模型 (COM) 自动化服务器以实时检索数据"是否有将此COM服务器与Python集成的中间方法?

谢谢。

从您提供的链接来看,Microsoft似乎为 VBA 提供了一个包装器(但不是 Python)。

我建议与数据提供者核实他是否为Python提供了API。这与Excel无关,但它允许您将数据直接接收到Python中。

另一种选择是使用 RDT 在 Excel 中接收数据,并使用类似 xlwings 模块 http://xlwings.org/将数据从 Excel 获取到 Python。

它不是直接读取到python,而是使用临时文本文件。我尝试了以下内容,在excel中我使用Workbook_SheetCalculate将RTD数据写入文本文件,每次数据更改时,有时每秒读取3次。

从Python,我用Pandas将文本文件读取到Dataframe,它几乎是实时的。

您可以使用 PyXLL 将实时数据作为 RTD 函数流式传输到 Excel。

有关详细信息,请参阅 https://www.pyxll.com/docs/userguide/rtd.html,或查看本文,其中演示如何使用 Python 将实时推文流式传输到 Excel https://www.pyxll.com/blog/a-real-time-twitter-feed-in-excel/

最新更新