主要内容

本页采用了机器翻译。点击此处可查看英文原文。

从 MATLAB 创建 Excel 加载项

R2026b

支持的平台:仅限 Microsoft® Windows®。

此示例说明如何使用 MATLAB® Compiler™ 生成包含自定义函数的 Microsoft Excel® 加载项,以便在 Excel 中使用。函数 mymagic 返回一个 n×n 幻方矩阵,该矩阵的行和与列和相等。目标系统不需要 MATLAB 的许可副本即可运行该加载项。

开始之前,请验证您是否已满足 MATLAB Compiler 的所有 Excel 目标要求。有关详细信息,请参阅MATLAB Compiler 的 Excel 目标要求和限制。

注意

要生成 Visual Basic® 文件,请在 Excel 中启用信任对 VBA 工程对象模型的访问。如果您不这样做,您可以通过将 .bas 文件导入 Excel 来手动创建加载项。

在 MATLAB 中创建函数

在 MATLAB 中,找到要部署为 Excel 加载项的 MATLAB 代码。

对于此示例,请编译位于 matlabroot\toolbox\matlabxl\examples\xlmagic 中的函数 mymagic.m。

function y = mymagic(x)
y = magic(x)

在 MATLAB 命令提示符下,输入 mymagic(5)。

输出为一个 5×5 方阵。

    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9

使用 compiler.build.excelAddIn 创建 Excel 加载项

使用编程方法构建 Excel 加载项。或者,如果您想使用图形界面创建 Excel 加载项,请参阅使用 Excel 加载项编译器创建 Excel 加载项。

  1. 在 MATLAB 中,找到要部署为独立应用程序的 MATLAB 代码。对于此示例,请使用 matlabroot\toolbox\matlabxl\examples\xlmagic 中的 mymagic.m 文件进行编译。

    appFile = fullfile(matlabroot,'toolbox','matlabxl','examples','xlmagic','mymagic.m');
  2. 使用 compiler.build.excelAddIn 函数构建 Excel 加载项。使用名称-值参量设置库和类名称并启用 Visual Basic 文件的生成。

    buildResults = compiler.build.excelAddIn(appFile, ...
    'AddInName','xlmagic', ...
    'ClassName','xlmagicclass', ...
    'GenerateVisualBasicFile','on');

    您可以使用名称-值参量在 compiler.build 命令中指定其他选项。有关详细信息,请参阅 compiler.build.excelAddIn。

    compiler.build.Results 对象 buildResults 包含有关编译类型、生成的文件、包含的支持包和编译选项的信息。

    该构建函数会在当前工作目录下的一个名为 mymagicexcelAddIn 的文件夹中生成文件。有关生成的文件的信息,请参阅 打包 MATLAB 函数后生成的文件。

    注意

    生成的加载项不包括 MATLAB Runtime 或安装程序。要使用 buildResults 对象创建安装程序,请参阅 compiler.package.installer。

在 Excel 中安装加载项

  1. 打开 Microsoft Excel。

  2. 点击文件选项卡,然后点击选项,再点击加载项类别。

  3. 在管理框中,点击 Excel 加载项,然后点击转至。系统将显示加载项对话框。

  4. 点击浏览并找到加载项 xlmagic.xla。

  5. 系统会提示您将 xlmagic.xla 复制到与您的用户名关联的 Addins 文件夹。您可以选择复制该加载项或直接运行它。对于此示例,请选择是。该加载项将被复制并添加到您的工作簿。

  6. 点击确定以关闭加载项对话框。

测试加载项

  1. 在 Excel 工作簿中选择一个由 3×3 单元格组成的网格。

  2. 在公式栏中输入以下自定义函数:

    =mymagic(3)
    当您在公式栏中键入 my 时,mymagic 将显示为 Excel 中的一个自定义函数:

  3. 按键盘上的 Ctrl+Shift+Enter 键。

    所选单元格将显示以下输出:

    8	1	6
    3	5	7
    4	9	2
  4. 有关其他示例,请打开位于 matlabroot\toolbox\matlabxl\examples\xlmagic 中的文件 xlmagic.xls。此电子表格包含三个自定义 VBA 宏,这些宏演示了使用编译的 MATLAB 函数的各种方法。

分发加载项

要将加载项分发给最终用户,请参阅分发加载项并集成到 Microsoft Excel 中。

另请参阅

主题