【问题标题】:calling or using java jar module inside excel macro在 excel 宏中调用或使用 java jar 模块
【发布时间】:2015-03-19 00:15:15
【问题描述】:

我想创建一个简化的函数,它接受用户的几个输入。输入是 java 模块的参数,它具有非常复杂的逻辑并返回输出。此输出被传递到 excel 单元格。我尝试使用 ogga。但它只是工作表级别。任何建议。

我也尝试过运行 shell 命令,但它只是返回。

【问题讨论】:

  • 尝试从与 Java 应用程序通信的 VBA-excel 调用 WEBSERVICE。我已经做过一次了

标签: java excel vba


【解决方案1】:

我的建议是:

  1. 创建一个 Java Web 服务来提供您的业务逻辑
    First Option
  2. 从您的 VBA 调用此 Web 服务
    First Option
    Second option

【讨论】:

  • 感谢 Solano,但我对设置 web 服务知之甚少。我将尝试阅读更多内容...并回复您..再次感谢您的帮助
  • Solano,有没有办法使用 jvm 进程而不是让 tomcat 服务器服务这样的代码。
  • 您需要 tomcat 才能接收对您的 Web 服务的调用。它将处理您无需担心的 tcp 连接。 tomcat 非常简单,只需使用 eclipse 或 netbeans 安装和部署即可。
【解决方案2】:

只是一个想法:我认为可以将 Java 代码转换为可以从 .Net 调用的东西。然后是来自 VBA 的 .Net ... 如果您需要将代码放在本地而不是 Web 服务上(也可能在本地运行),这也许是另一种选择 但我认为拥有网络服务会更好......而且更容易维护。为此使用 Spring Boot,将非常容易...

【讨论】:

  • 我不太了解 Spring Boot.. 有没有一种方法可以让我只使用 .jar 文件而无需让用户在他们的机器上运行任何应用程序服务器,我只是想让他们将此 jar 用作 excel 表上的函数..
  • 如果您使用 spring boot,所有内容都将嵌入 20 到 30 MB。然后您只需调用“Java -jar yourwebservice.jar”,然后 Web 服务就坐在那里等待传入的连接。无需安装tomcat、jboss 之类的...... Packtpub 有一本关于spring boot 的好书,我认为它现在仍然有折扣。立即开始,这应该是一个很好的基础,spring.io 博客中链接的更多示例
【解决方案3】:

如果您使用 Spring Boot,这是一个如何定义 Web 服务的示例:

@RequestMapping(value = "/complexlogic" )
@ResponseBody
public String getTopTen( @RequestParam(value = "input", defaultValue = 42) Integer input ) {
        return "The answer to anything is: " + input;
    }

这使您可以调用http://localhost:8080/complexlogic?input=42 并获取结果字符串。你需要 JSON 吗?没什么大不了的,只需定义一个对象并修改其中一个注释即可。

这是上述书籍的link

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-21
    • 1970-01-01
    相关资源
    最近更新 更多