使用Excel GUI编译Matlab应用程序的选项

时间:2012-07-24 15:36:32

标签: matlab user-interface matlab-deployment excel-addins

我正在为自己和其他人在Excel上使用GUI开发一个Matlab应用程序(为了便于使用,还因为某些数据处理需要在Excel中完成)。

为简化起见,以下是构成我的应用程序的所有部分

  • 第1部分:带有运行设置的Excel GUI
  • 第2部分:创建数据结果和图像的Matlab程序
  • 第3部分:使用Matlab数据和Excel的Excel GUI图像结果和aditionnal Excel数据处理

当前,当其他人需要使用它时,他们会给我运行设置(第1部分),我为他们运行Matlab程序(第2部分)并向他们提供数据,图片和我最后的Excel GUI( Part3 )。


我试图通过结合上述部分来改善这种情况。我看到 2个选项

  • 选项1 :从Excel运行Matlab(电子表格链接EX 工具箱)因此具有Part1& Part2在一起
    • =>对我来说会更多(我有Matlab,我可以通过运行我的Matlab代码看到更多信息)
  • 选项2 :打包全部:第1部分+ 2 + 3在可执行文件中( MATLAB编译器工具箱)
    • =>将是我的最终用户(不需要Matlab)

现在我的问题

  1. 我可以(我应该吗?我不应该吗?)做两种选择吗?还是我让一切变得复杂?并且根本不应该使用Excel Link工具箱?
  2. 我是否需要使用Matlab Builder EX来实现选项2? (因此创建一个加载项)或者我是否也可以使用工具箱实现这一点:Excel Link + Compiler? (没有加载项,但是VBA代码?)
  3. 干杯!

2 个答案:

答案 0 :(得分:2)

如果您选择使用MATLAB编译器,以下是我想象的步骤

  • 在MATLAB中创建GUI。它将显示一个允许用户输入一些设置的界面。它还有一个" RUN"将使用这些参数运行MATLAB程序的按钮。

  • 在您的算法结束时,使用COM自动化打开Excel并以编程方式使用上一步的结果填充表。您可以将任何生成的MATLAB图形和图形的快照添加到Excel文件中(有关示例,请参阅here),或者只是另存为单独的图像文件。您甚至可以将VBA宏添加到工作表中。

  • 将上述内容部署为独立应用程序。它不依赖于MATLAB(用户只能安装免费的MCR运行时)。

  • 用户运行您的应用程序,并使用它来生成Excel文件。现在,用户可以选择打开此文件,并手动执行任何最终数据操作。

如果您想要额外的集成,可以使用"电子表格链接EX"工具箱。

HTH

答案 1 :(得分:0)

有一个很好的答案可以回答我的问题。 MATLAB Compiler vs MATLAB Coder

<强>基本上

  • 对于 R2014b和更早版本版本:可以使用&#34; MATLAB Builder EX for Excel &#34;生成Excel加载项。工具箱

  • 来自 R2015a(最新发布):工具箱&#34; MATLAB编译器&#34;现在可以生成Excel加载项

这简化了很多事情!

Nico(回答他自己的问题:-))