主要内容

创建宏MATLAB函数有多个参数

这个例子向您展示了如何使用,并创建宏,变长输入和输出的功能。

先决条件

  • 验证你见过的所有MATLAB®编译器™Excel®目标要求。有关详细信息,请参见MATLAB编译器对微软Excel插件的先决条件

  • 确认你有微软®Excel安装。

  • 注册mwcomutil.dll在目标机器上。

    在一个系统命令窗口中,导航到matlabroot\ bin \ win64(matlabrootMATLAB或代表的位置MATLAB运行时在您的系统上),运行以下命令:

    mwregsvr mwcomutil.dll

  • 最终用户必须有一个安装MATLAB运行时运行插件。有关详细信息,请参见安装和配置MATLAB运行时(MATLAB编译器SDK)

    出于测试目的,您可以使用一个安装MATLAB代替MATLAB运行时

过程

  1. 复制xlmulti示例文件夹,附带MATLAB工作文件夹:

    拷贝文件(fullfile (matlabroot,“工具箱”,“matlabxl”,“例子”,“xlmulti”),“xlmulti”)

    在MATLAB命令提示符下,导航到新xlmulti文件夹在你的工作文件夹。

  2. 检查myplot,myprimes,mysum功能。

    myplot需要一个整数输入和情节一行从1到这个数字。

    函数myplot (x)的阴谋(1:x)

    myprimes需要一个整数输入n并返回所有的质数小于或等于n

    函数p =质数(n)如果长度(n) ~ = 1,错误(“N”必须是一个标量);结束如果n < 2, p = 0 (1,0);返回,结束p = 1:2: n;q =长度(p);p (1) = 2;k = 3:2: sqrt (n)如果p ((k + 1) / 2) p (((k * k + 1) / 2):凯西:q = 0;结束结束p = p (p > 0);

    mysum需要一个输入的变长度输入宗量类型的整数补充说,所有的数据,并返回结果。

    函数y = mysum(变长度输入宗量)y =总和([变长度输入宗量{}):)

    Microsoft Excel文件xlmulti.xls以几种不同的方式演示了这些函数。

  3. 构建Excel的插件库的编译器应用程序或compiler.build.excelAddIn使用以下信息:

    价值
    库名称 xlmulti
    类名 xlmulticlass
    文件编制 myplot.m
    myprimes.m
    mysum.m

    例如,如果您正在使用compiler.build.excelAddIn类型:

    buildResults = compiler.build.excelAddIn ([“myplot.m”,“myprimes.m”,“mysum.m”),“AddInName”,“xlmulti”,“名称”,“xlmulticlass”,“GenerateVisualBasicFile”,“上”);

    更多细节,请参阅说明书从MATLAB创建Excel插件

  4. 开始Microsoft Excel在您的系统上。

  5. 打开文件xlmulti.xls

    出现如图所示的例子:

    请注意

    如果一个Excel提示说,该文件包含宏,点击启用宏运行这个例子。

  6. 调用函数myplot值为4,使A7 (= myplot (4)活动单元格。新闻F2然后输入

    这个过程的情节一行从1到4在MATLAB图窗口。这个图形可以操纵的方式同样会在MATLAB操作图。一些功能,如线条样式或颜色变化的能力,是不可用的。

    调用单元格包含0因为函数不返回一个值。

  7. 下一个例子调用函数mysum在四个不同的方面:

    • 第一(细胞阿)需要1到10的值,将它们添加,并返回结果55岁(= mysum (1, 2, 3, 4, 5, 6, 7, 8, 9, 10))。

    • 第二个(细胞A19)细胞的范围对象,它是一个范围值1到10,将它们添加,返回的结果55 (= mysum (B19 K19):)。

    • 第三个A24(单元)需要多个范围对象,将它们添加,并返回的结果120 (= mysum (B24: K24 B25: L25 B26: D26))。这幅图表明,范围不需要相同的尺寸和所有的细胞不需要一个值。

    • 第四(细胞故事本来)相结合的一系列对象和显式声明的值,将它们添加,返回结果16 (= mysum (10, B30 D30):)。

    这说明运行Excel文件时打开了。重新激活的插图,激活适当的细胞,然后按F2紧随其后的是输入

  8. 而在接下来的那幅图中,宏myprimes调用函数myprimes.m在细胞A42 10的一个初始值。函数返回的所有素数不到10通过E42 B42细胞。

    要执行宏,Excel从主窗口(Visual Basic®编辑器),通过按打开宏对话框AltF8同时键,或通过选择工具>>

  9. 选择myprimes从列表中,然后单击运行

    这个函数会自动调整大小,如果返回的输出大于指定的输出范围。改变细胞A42的价值大于10。然后重新运行宏。输出返回所有质数不到你进入细胞A42数量。

检查微软Visual Basic代码(可选)

  1. 开发人员选项卡上,单击Visual Basic,或者按ALT+打开Visual Basic编辑器。在旧版本的Excel,它可能在工具>>Visual Basic编辑器

  2. 在项目——VBAProject窗口中,双击扩展VBAProject (xlmulti.xls)

  3. 扩大模块文件夹,双击Module1的模块。这将打开VB代码窗口与这个项目的代码。

另请参阅

(MATLAB编译器SDK)||(MATLAB编译器SDK)

相关的话题