- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Matlab和Excel混合编程
2011-07-18 21:26:17| 分类: HYPERLINK /blog/ \l m=0t=1c=fks_084064086082081075092087080095085094080068083086087069087 \o Excel VBA Excel VBA | 标签: |举报 |字号大中小 订阅
MATLAB与Excel的混合编程有两种方式:(1)利用MATLAB提供的Excel Link插件,实现Excel与 MATLAB
的数据共享;(2)利用MATLAB提供的Excel生成器,生成dll组件和VBA代码,dll组件可以进行COM生成器
组件相似的操作,VBA代码则可以在Excel的Visual Basic编译器中直接使用,可以保存为插件.
第一种方法:通过Excel Link实现Excel和MATLAB的数据共享
1.Excel Link是一个软件插件,它可将Excel与MATLAB进行集成,通过MATLAB与Excel的链接,用户可
以在Excel的工作空间中,利用Excel的宏编程功能,使用MATLAB的数据处理和图形处理功能进行相关操
作,同时Excel保证MATLAB和Excel工作空间数据的交换和同步更新。使用Excel Link时,不必脱离Excel
环境,而直接在Excel的工作区或者宏操作中调用MATLAB函数,Excel提供了11个函数来实现链接和数据
操作。
2.Excel Link的安装Excel Link对运行环境没有要求,只要能够同时运行MATLAB和Excel即可,大概要200KB的空间,在
Windows平台下要求先安装Excel,再安装MATLAB。Excel Link的安装步骤如下:(1)启动Excel,选择菜单
栏中的“工具(Tools)”,执行“加载宏”命令;(2)在打开的“加载宏”对话框中单击“浏览”按钮,
选择用户自己的\matlab\toolbox\exlink路径下的excellink.xla文件(可能是隐藏文件),然后单击“确
定”按钮。(3)返回“加载宏”窗口,此时已经选中了“Excel link”选项,单击“确定”按钮;(4)重
新启动Excel就可以看到多一行“Spreadsheet link EX”工具栏。3.设置Excle link的启动方式在启动Excle时,如果不希望同时启动Excel link和Matlab,在Excel数据表单元中输入
“=MLAutoStart(no)”。手动启动Excel link和Matlab,在菜单中选择“宏”,在打开的“宏”对话框中输入“MATLABinit
”,单击“执行”按钮。在Excel环境中启动或终止Excel link和Matlab,在单元格中输入“=MLOpen()”或“=MLClose()”
。4.Excel Link的数据管理函数Excel提供了9个数据管理函数,实现MATLAB与Excel之间的数据复制,并可在Excel中执行MATLAB命
令。
MATLABfcn() 对于给定的Excel数据,运行MATLAB命令MATLABsub() 对于给定的Excel数据,运行MATLAB命令并指定输出位置MLDeleteMatrix() 删除MATLAB矩阵MLEvalString() 执行MATLAB命令MLGetMatrix() 向Excel数据表中写入MATLAB矩阵的数据内容MLGetVar() 向Excel数据表VBA写入MATLAB矩阵的数据内容MLAppendMatrix() 向MATLAB空间添加Excel数据表的数据MLPutMatrix() 向Excel数据表创建或覆盖MATLAB矩阵MLPutVar() 向Excel数据表VBA创建或覆盖MATLAB矩阵
下面详细介绍一下它的用法:
(1) Matlabfcn根据给定的Excel数据执行Matlab命令。在工作表中使用时的语法:matlabfcn(command, inputs)参数command,Matlab将执行的命令,命令需要写成“command”(使用双引号引起来)的形式。参
数 inputs 传给Matlab命令的变长输入参数列表。列表是包含数据的工作表单元格范围。函数返回单一
数值或者是字符串,结果返回到调用函数的单元格中。例如matlabfcn(”sum”,B1:B10);把从B1到B10的单元格中数据相加。
(2) Matlabsub根据给定的Excel数据执行Matlab命令,并将结果返回到指定的单元格中。在工作表中的使用语法:matlabsub(command,edat,inputs)command和inputs参数的与
文档评论(0)