主要内容

执行电子表格的链接功能

电子表格链接™功能管理之间的连接和数据交换微软®Excel®和MATLAB®,无需离开Microsoft Excel环境。

要执行电子表格链接功能,必须:

  • 理解这些函数之间的区别Microsoft Excel功能。

  • 根据您的情况选择正确的函数类型、执行方法和计算模式。

  • 决定如何指定函数和参数。

电子表格的链接而且微软Excel功能差异

Microsoft Excel,输入电子表格链接函数可以类似于Microsoft Excel功能。的差异包括:

  • 电子表格链接函数执行一个动作,而Microsoft Excel函数返回一个值。

  • 电子表格链接函数名不区分大小写。进入要么MLPutMatrixmlputmatrix执行MLPutMatrix函数。

  • MATLAB函数名和变量名区分大小写。例如,债券债券,债券是三个不同的MATLAB变量。

电子表格的链接函数类型

电子表格链接有链接管理和数据管理功能。

链接管理功能初始化、启动和停止电子表格链接和MATLAB软件。执行matlabinit函数从Excel工具>菜单或宏子程序中。

数据管理功能是在数据之间复制数据Microsoft Excel以及MATLAB工作空间。这些函数执行MATLAB中的命令Microsoft Excel.除了MLPutVar而且MLGetVar,您可以作为工作表单元格公式或在VBA宏中执行任何数据管理功能。的MLPutVar而且MLGetVar函数只在VBA宏中执行。

电子表格的链接函数执行方法

您可以使用这些不同的方法执行电子表格链接函数。

执行方法 优势 限制

Microsoft Excel丝带

快速访问MATLAB组中常见的电子表格链接功能:

无法使用完整的电子表格链接功能。

Microsoft Excel上下文菜单

在工作表单元格中快速访问常用的电子表格链接功能:

无法使用完整的电子表格链接功能。

Microsoft Excel工作表细胞

  • 执行任何电子表格链接功能。

  • 执行MATLAB函数。

你不能执行MLGetVarMLPutVar,或matlabinit在工作表单元格中。

Microsoft ExcelVBA宏

  • 执行任何电子表格链接功能。

  • 执行MATLAB函数。

  • 执行高级VBA代码。

需要的知识微软Visual Basic®

MATLAB函数向导

  • 找到MATLAB函数的类别或文件夹。

  • 探索MATLAB函数语法。

  • 通过选择语法和指定参数来执行MATLAB函数。

  • 执行自定义MATLAB函数。

只使用电子表格链接函数执行MATLAB函数matlabfcn而且matlabsub

指定电子表格的链接函数微软Excel

在工作表单元格中指定电子表格链接函数时,请以+的迹象。然后,将函数参数括在圆括号中。这个示例公式使用MLPutMatrix函数在单元格中导出数据10大到矩阵一个

= MLPutMatrix(“A”,C10)

在VBA宏中,在函数名和第一个参数之间留一个空格。不要使用括号。

C10 MLPutMatrix“A”

若要在操作完成时更改活动单元格,请选择Excel工具选项>编辑>回车后移动选区.此操作为冗长的操作提供了有用的确认。

设置计算模式

电子表格链接功能是最有效的自动计算模式。若要自动重新计算电子表格链接函数,请向值发生更改的单元格添加单元格引用。例如,MLPutMatrix函数在单元格中的值时再次执行C1的变化。

=MLPutMatrix("bonds", D1:G26) + C1

使用MLPutMatrix手动计算模式下:

  1. 在单元格中输入函数。

  2. 新闻F2

  3. 新闻输入.执行的函数。

电子表格链接功能不会自动调整单元地址。如果在函数中使用显式单元格地址,请在以下情况下编辑函数参数以引用新的单元格地址:

  • 插入或删除行或列。

  • 将函数移动或复制到另一个单元格中。

指定电子表格的链接函数参数

可以在电子表格链接函数中使用变量名或引用参数的数据位置来指定参数。

注意:

电子表格链接函数期望使用默认的引用样式(A1)工作表单元格引用。列必须用字母标明,行必须用数字标明。如果您的工作表显示的列用数字而不是字母指定,那么请遵循以下步骤:

  1. 选择工具>选项

  2. 单击一般选项卡。

  3. 设置、清晰的R1C1参考风格复选框。

变量名称的参数

  • 您可以直接或间接地在大多数电子表格链接函数中指定变量名参数。

    • 要直接指定变量名,请将其括在双引号中,例如,= MLDeleteMatrix(“债券”)

    • 要指定一个变量名作为间接引用,输入时不要使用引号。函数计算实参的内容以检索变量名。参数必须是工作表单元格地址或范围名称;例如,= MLDeleteMatrix (C1)

请注意

电子表格链接函数不支持全局变量。在Excel和MATLAB之间交换数据时,软件使用基础工作区。基本工作区中的变量会一直存在,直到清除它们或结束MATLAB会话。

数据位置参数

  • 数据位置参数必须是工作表单元格地址或范围名称。

  • 不要将数据位置参数括在引号中(在MLGetMatrix,它有唯一的参数约定)。

  • 数据位置参数可以包括工作表号,例如Sheet3 !B1: C7Sheet2 !输出

    提示:

    中引用特殊字符作为工作表名称的一部分MLGetMatrixMLPutMatrix将工作表名称括在单引号内().

指定MATLAB函数MATLAB函数向导

在MATLAB函数向导中找到MATLAB函数或自定义函数后,可以指定语法和参数。然后,电子表格链接指定这个命令在MATLAB工作空间中求值。

要执行具有多个输出的MATLAB函数,请指定输出的写入位置。

  • 方法指定单元格的目标范围可选输出细胞(s)字段使所选函数作为参数出现在当前工作表单元格中matlabsub.的matlabsub函数包含一个参数,该参数指示将输出写入何处。例如,数据来自A2的输入兰德函数,输出的目标单元格为B2

    = matlabsub(“兰德”、“Sheet1 ! B 2美元”,Sheet1 ! $ 2美元)

  • 尽管函数向导允许指定多个输出单元格,但它并不返回多个输出。如果指定输出单元格的范围,向导将从第一个输出单元格开始返回第一个输出参数。例如,如果函数返回两个元素一个而且b,并指定A1, A2作为输出单元格,将显示函数向导一个在细胞A1.函数向导丢弃元素b.如果输出是一个矩阵,函数向导将从第一个输出单元格开始显示该矩阵的所有元素。

    有关多个输出参数,请参见从MATLAB函数返回多个输出参数

要执行多个MATLAB函数或使用MATLAB对象,请编写一个包装器函数。

  • 函数向导不允许同时执行多个MATLAB函数。而是编写一个包装器函数。例如,绘制彭博(Bloomberg)的历史收盘价格数据®,在MATLAB中输入此代码并保存为函数。

    函数plotbloombergdata (s)% plotbloombergdata是连接到% Bloomberg(R),检索的历史收盘价格数据%,并绘制给定的价格彭博安全。c = blp;f =“LAST_PRICE”;fromdate =“01/01/2015”;迄今为止,=“12/31/2015”;d =历史(c、s、f, fromdate,迄今为止);情节(d (: 1), d(:, 2))关闭(c)结束

    关于编写函数的详细信息,请参见在文件中创建函数

  • Microsoft Excel没有MATLAB对象的上下文。要使用MATLAB对象,比如到服务提供者的连接,编写一个包装器函数。包装器函数执行创建和操作这些对象的函数。

另请参阅

||||

相关的话题

Baidu
map