电子表格链接™管理之间的连接和数据交换功能微软®Excel®和MATLAB®,没有离开Microsoft Excel环境。
执行表格链接功能,您必须:
理解这些功能和之间的差异Microsoft Excel功能。
选择合适的函数类型,执行方法,为你的情况和计算模式。
决定如何指定函数和参数。
在Microsoft Excel,进入可以类似于电子表格链接功能Microsoft Excel功能。的差异包括:
电子表格链接函数执行一个动作,Microsoft Excel函数返回一个值。
电子表格链接函数名是不区分大小写的。进入要么MLPutMatrix
或mlputmatrix
执行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工作表细胞 |
|
你不能执行 |
Microsoft ExcelVBA宏 |
|
需要的知识微软Visual Basic®。 |
MATLAB函数向导 |
|
当你指定一个电子表格链接函数在一个工作表细胞,通过从输入公式+
或=
的迹象。然后,将函数参数置于括号中。这个例子使用了公式MLPutMatrix
在细胞函数导出数据10大
到矩阵一个
。
= MLPutMatrix (“A”, C10)
在VBA宏,留下一个空间函数名和第一个参数之间的关系。不使用括号。
C10 MLPutMatrix“A”
改变活动单元格操作完成时,选择Excel工具选项>编辑>后选择输入。这一行动提供了一个有用的冗长的操作的确认。
电子表格链接功能最有效的自动计算模式。自动化电子表格链接的重新计算函数,添加一个引用单元,其价值变化。例如,MLPutMatrix
函数执行时细胞的价值C1
的变化。
= MLPutMatrix(“债券”,D1: G26) + C1
使用MLPutMatrix
在手动计算模式:
函数输入到一个细胞。
新闻F2。
新闻输入。执行的函数。
电子表格链接功能不自动调整单元格地址。如果你在一个函数,使用显式的单元格地址编辑函数参数引用一个新的单元格地址当你:
插入或删除行或列。
移动或复制到另一个细胞的功能。
您可以指定参数表格链接功能使用变量名或通过引用的数据位置参数。
注意:
电子表格链接功能预计,默认的参考样式(A1)工作表细胞引用。必须指定的列字母和数字的行。如果你的工作表显示列指定数字代替字母,然后遵循这个过程:
选择工具>选项。
单击一般选项卡。
下设置、清晰的R1C1参考风格复选框。
你可以直接或间接地指定一个变量名称参数在大多数电子表格链接功能。
直接指定一个变量名称,将双引号,例如,= MLDeleteMatrix(“债券”)
。
指定一个变量名作为间接引用,进去没有引号。函数参数的评估内容检索变量名。参数必须是一个工作表细胞地址或名称;例如,= MLDeleteMatrix (C1)
。
请注意
电子表格链接功能不支持全局变量。万博1manbetxExcel和MATLAB之间交换数据时,软件使用基础的工作区。基本工作空间中的变量存在直到你清楚他们或MATLAB会话结束。
工作表数据位置参数必须是一个细胞地址或名称。
没有附上数据位置参数在引号(除了吗MLGetMatrix
独特的参数规范)。
一个数据位置参数可以包含一个工作表数量等Sheet3 ! B1: C7
或输出Sheet2 !
。
提示:
你可以参考特殊字符作为一个工作表名称的一部分MLGetMatrix
或MLPutMatrix
通过将工作表名称包含在单引号(”
)。
后你会发现MATLAB函数或自定义函数在MATLAB函数向导中,您可以指定语法和参数。然后,电子表格链接指定这个命令在MATLAB工作区中进行评估。
执行一个MATLAB函数具有多个输出,将输出写入到指定的地方。
指定一个目标细胞使用的范围可选输出细胞(s)域会导致所选函数出现在当前工作表细胞作为参数matlabsub
。的matlabsub
函数包含一个参数,表示写输出。例如,数据A2
是输入兰德
函数和输出的靶细胞B2
:
= matlabsub(“兰德”、“Sheet1 ! B 2美元”,Sheet1 ! $ 2美元)
尽管函数向导允许您指定多个输出细胞,它不返回多个输出。如果你指定一个范围的输出细胞,向导返回第一个输出参数从第一个输出单元。例如,如果一个函数返回两个元素一个
和b
,你指定A1, A2
作为输出细胞,显示函数向导一个
在细胞A1
。函数向导丢弃元素b
。如果输出是一个矩阵,矩阵的函数向导显示所有元素从第一个输出单元。
多个输出参数,请参阅从MATLAB函数返回多个输出参数。
执行多个MATLAB函数或使用MATLAB对象,编写一个包装器函数。
函数向导不允许同时执行多个MATLAB函数。编写一个包装器函数。例如,从彭博情节历史收盘价格数据®,MATLAB中输入这个代码并将其保存为一个函数。
函数plotbloombergdata (s)% plotbloombergdata是连接到一个包装器函数%彭博(R),检索历史收盘价格数据% 2015年,土地价格对于一个给定的%彭博(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对象,例如连接到服务提供者,编写一个包装器函数。包装器函数执行创建和操作这些对象的函数。
matlabfcn
|matlabinit
|MLEvalString
|MLGetMatrix
|MLPutMatrix