通过java刷新excel工作表
我必须建立一个应用程序,从excel表格中提取股票交易数据,然后保存它 在数据库中。问题在于excel工作表通过彭博插件获得新数据 要刷新页面,用户必须打开电子表格并点击excel插件上的刷新按钮。一秒钟后,数据将添加到图纸中通过java刷新excel工作表,java,excel,bloomberg,Java,Excel,Bloomberg,我必须建立一个应用程序,从excel表格中提取股票交易数据,然后保存它 在数据库中。问题在于excel工作表通过彭博插件获得新数据 要刷新页面,用户必须打开电子表格并点击excel插件上的刷新按钮。一秒钟后,数据将添加到图纸中 我看过关于通过java获取数据或将数据放入excel工作表的指南,但不确定如何打开工作表、触发更新并获取数据。也许您可以使用Web查询直接使用excel检索数据。 所以基本上,这个功能允许你从网络上获取数据。指定URL,然后选择页面上要导入的数据 您也可以在VB中编写这些
我看过关于通过java获取数据或将数据放入excel工作表的指南,但不确定如何打开工作表、触发更新并获取数据。也许您可以使用Web查询直接使用excel检索数据。 所以基本上,这个功能允许你从网络上获取数据。指定URL,然后选择页面上要导入的数据 您也可以在VB中编写这些查询(询问是否需要有关如何使用VB进行查询的更多详细信息)
不清楚您想要实现什么目标。我知道您仅使用电子表格获取数据并将其保存到数据库中 我可以想到几个备选方案:
- [dirty]在Windows中创建计划任务,每x分钟/小时打开一次电子表格。在工作簿中,创建一个
事件,该事件使用workbook\u Open
执行一个宏,以在几分钟后(数据更新所需的时间)处理数据。这很容易出错,并且可能会不时失败Application.OnTime
- [更好]除了使用VBA加载项以编程方式获取数据、从VBA填充工作表和/或对数据执行所需操作外,请使用类似的方法。在这种情况下,不需要
。您甚至可以自动保存/关闭电子表格Application.OnTime
- [更好]让java代码获取数据并将其发送到数据库。如果用户需要Excel中的数据,可以在需要时让Excel查询数据库
注意:对于典型的Bloomberg Terminal/Anywhere许可证,不允许在不同的机器上保存数据,因此数据库需要位于本地PC上。其他许可证有不同的条款。我认为您应该研究使用来检索数据。您可以访问彭博终端FLDS中的任何字段。您可以使用Apache POI。我认为,一般来说,您可以将数据流式传输到Java中,对其进行修改并将其写出来。如果该文件已经打开,您可能会遇到一些问题。您好,Kamil,您找到解决此问题的方法了吗?我不知道如何使用web查询从Bloomberg addin获取数据。