2013-04-05 72 views
0

即时通讯编程新手。在java中调用宏

我想创建一个简单的程序,读取.xls/.xlsx文档,调用宏并保存文件。我使用org.apache.poi和一切似乎很好,除了调用宏。我一直在寻找一些关于论坛的提示,但一无所获。

宏创建之前,它的保存。我只是有很多文件,不想手动做。

在Java中我创建了一个工作簿,创建了一个工作表。如何调用一个宏来完成?我应该参考工作簿还是工作表本身?

在此先感谢!

回答

0

这目前不可能。 POI是一个读取/编辑Office文件的库。它将保留文件中存在的任何宏,但它没有内置的解释器来运行宏。

1

有几种方法来实现这一目标:通过的ProcessBuilder

  • 启动Excel让Excel运行宏,并保存文件。要运行宏,您可能需要添加一点VBA(例如在AutoOpen Sub中)。
  • 还有一些工具可以从Excel中调用Java(ObbaXLLoop)。您可以调用Java表单VBA,然后调用宏,然后保存该文件。
+0

为了让Excel执行宏,这里假设您在运行代码的机器上安装了Excel。 如果这是在基于服务器的环境中运行,请记住,Microsoft本身不建议在服务器上使用Office Automation http://support.microsoft.com/kb/257757 – 2013-05-10 18:03:49