在Microsoft Excel工作表中单击事件触发java代码

时间:2017-09-21 06:32:20

标签: java excel click

有没有办法在点击excel中的特定单元格后,我可以调用java代码并在该单元格中显示详细信息?细节可以是,单元格数据+行号+列号等

我正在探索。我看到了一个名为Apache POI的东西 - > https://www.mkyong.com/java/apache-poi-reading-and-writing-excel-file-in-java/

这会满足我的用例吗?

谢谢, Anusha

1 个答案:

答案 0 :(得分:0)

据我所知,Excel事件只能使用VBA。 (见https://msdn.microsoft.com/en-us/vba/excel-vba/articles/worksheet-object-excel

理论上你可以使用VBA做任何事情,所以即使启动一个java程序并将它作为参数提供给你需要的数据。但我没有看到很多用例 在VBA中完成整个事情并不简单。

但是如果你想让一个单元看起来像一个按钮,就可以开始你的邮件程序了。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
   'maybe first save your exel file, perhaps even to a temp location
   'so your java program can access the data.
   'you can also directly provide the data you need to your java program
   'if it's little enough to be passed as a command line parameter.

   Dim strProgramName As String
   Dim strArgument As String

   strProgramName = "C:\.....\java.exe"
   strArgument = "C:\....\yourjavaprogram " + "yourexcelfilelocation"

   Call Shell("""" & strProgramName & """ """ & strArgument & """", vbNormalFocus)
End Sub