matlab和excel混合编程

matlab和excel混合编程

ID:8817906

大小:23.82 KB

页数:13页

时间:2018-04-08

matlab和excel混合编程_第1页
matlab和excel混合编程_第2页
matlab和excel混合编程_第3页
matlab和excel混合编程_第4页
matlab和excel混合编程_第5页
资源描述:

《matlab和excel混合编程》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、Matlab和Excel混合编程2011-07-1821:26:17

2、分类:ExcelVBA

3、标签:

4、举报

5、字号大中小订阅MATLAB与Excel的混合编程有两种方式:(1)利用MATLAB提供的ExcelLink插件,实现Excel与MATLAB的数据共享;(2)利用MATLAB提供的Excel生成器,生成dll组件和VBA代码,dll组件可以进行COM生成器组件相似的操作,VBA代码则可以在Excel的VisualBasic编译器中直接使用,可以保存为插件.第一种方法:通过ExcelLink实现Excel和

6、MATLAB的数据共享1.ExcelLink是一个软件插件,它可将Excel与MATLAB进行集成,通过MATLAB与Excel的链接,用户可以在Excel的工作空间中,利用Excel的宏编程功能,使用MATLAB的数据处理和图形处理功能进行相关操作,同时Excel保证MATLAB和Excel工作空间数据的交换和同步更新。使用ExcelLink时,不必脱离Excel环境,而直接在Excel的工作区或者宏操作中调用MATLAB函数,Excel提供了11个函数来实现链接和数据操作。2.ExcelLink的安装Exc

7、elLink对运行环境没有要求,只要能够同时运行MATLAB和Excel即可,大概要200KB的空间,在Windows平台下要求先安装Excel,再安装MATLAB。ExcelLink的安装步骤如下:(1)启动Excel,选择菜单栏中的“工具(Tools)”,执行“加载宏”命令;(2)在打开的“加载宏”对话框中单击“浏览”按钮,选择用户自己的matlabtoolboxexlink路径下的excellink.xla文件(可能是隐藏文件),然后单击“确定”按钮。(3)返回“加载宏”窗口,此时已经选中了“Exc

8、ellink”选项,单击“确定”按钮;(4)重新启动Excel就可以看到多一行“SpreadsheetlinkEX”工具栏。3.设置Exclelink的启动方式在启动Excle时,如果不希望同时启动Excellink和Matlab,在Excel数据表单元中输入“=MLAutoStart("no")”。手动启动Excellink和Matlab,在菜单中选择“宏”,在打开的“宏”对话框中输入“MATLABinit”,单击“执行”按钮。在Excel环境中启动或终止Excellink和Matlab,在单元格中输入“=M

9、LOpen()”或“=MLClose()”。4.ExcelLink的数据管理函数Excel提供了9个数据管理函数,实现MATLAB与Excel之间的数据复制,并可在Excel中执行MATLAB命令。MATLABfcn()对于给定的Excel数据,运行MATLAB命令MATLABsub()对于给定的Excel数据,运行MATLAB命令并指定输出位置MLDeleteMatrix()删除MATLAB矩阵MLEvalString()执行MATLAB命令MLGetMatrix()向Excel数据表中写入MATLAB矩阵的

10、数据内容MLGetVar()向Excel数据表VBA写入MATLAB矩阵的数据内容MLAppendMatrix()向MATLAB空间添加Excel数据表的数据MLPutMatrix()向Excel数据表创建或覆盖MATLAB矩阵MLPutVar()向Excel数据表VBA创建或覆盖MATLAB矩阵下面详细介绍一下它的用法:(1)Matlabfcn根据给定的Excel数据执行Matlab命令。在工作表中使用时的语法:matlabfcn(command,inputs)参数command,Matlab将执行的命令,命

11、令需要写成“command”(使用双引号引起来)的形式。参数inputs传给Matlab命令的变长输入参数列表。列表是包含数据的工作表单元格范围。函数返回单一数值或者是字符串,结果返回到调用函数的单元格中。例如matlabfcn(”sum”,B1:B10);把从B1到B10的单元格中数据相加。(2)Matlabsub根据给定的Excel数据执行Matlab命令,并将结果返回到指定的单元格中。在工作表中的使用语法:matlabsub(command,edat,inputs)command和inputs参数的与ma

12、tlabfcn相同。参数edat,指定返回值写入在工作表中的位置。如果edat用双引号引起来,则edat必须是单元格地址或范围的名字。如果参数不用引号引起edat的形式,则通过计算获得矩阵名。例如:matlabsub(”sum”,”A1”,B1:B10);把工作表中从单元格B1到B10的数据相加,并将结果返回到单元格A1中。注意:edat指定的位置不能包含matlabsub所在的位置。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。