欢迎来到天天文库
浏览记录
ID:8799720
大小:42.00 KB
页数:7页
时间:2018-04-08
《excellink实现excel、matlab数据接口》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、Excellink实现Excel、Matlab数据接口ExcelLink是一个在Windows环境下实现Excel与Matlab进行链接的插件。通过连接Excel和Matlab,用户可以在Excel工作表空间和宏编程工具中使用Matlab的数值计算,图形处理等功能,不需要脱离Excel环境。同时由ExcelLink来保证两个工作环境中的数据交换和同步更新。1.ExcelLink的安装和和设置首先,在系统中安装Excel软件。然后安装Matlab和ExcelLink,用Matlab安装盘开始安装,选择自定义安装中,在选中组件ExcelLink,如下图所示
2、:安装完ExcelLink后还需要在Excel中进行一些设置后才能使用。启动Excel,选择菜单“工具”项下的“加载宏”项,弹出如下对话框:选中ExcelLink项。如果该项不存在,则通过浏览目录,在目录%MATLAB%toolboxexlink下找到excllink.xla文件,如下图示,并确定。选中ExcelLink项并确定后,在Excel中多了一个ExcelLink工具条,如下图示:经过以上的设置后就可以开始使用ExcelLink了。2.ExcelLink连接管理函数(1)Matlabinit该函数只能在宏子例程中使用。初始化ExcelLink和
3、启动Matlab进程。只有在MLAutoStart函数中使用“no”参数,才需要手动使用Matlabinit来初始化ExcelLink和启动Matlab进程,如果使用参数“yes”,则Matlabinit是自动执行的。使用语法:Matlabinit(2)MLAutoStart设置自动启动Matlab和ExcelLink。在工作表中的使用语法:MLAutoStart("yes")MLAutoStart("no")在宏中的使用语法:MLAutoStart"yes"MLAutoStart"no"使用“yes”参数,则当Excel启动时,自动启动Matlab和
4、ExcelLink;如果使用参数“no”,则当Excel启动时,不启动Matlab和ExcelLink。如果在此之前它们已经启动,则无任何影响。(3)MLClose终止Matlab进程并删除Matlab工作空间的所有变量。并通知Excel,Matlab不再运行。在工作表中的使用语法:MLClose()在宏中的使用语法:MLClose(4)MLOpen启动Matlab进程。如果Matlab进程已经启动,则MLOpen函数不进行任何操作。在使用MLClose关闭Matlab进程后使用MLOpen来重新启动Matlab。在工作表中的使用语法:MLOpen()
5、在宏中的使用语法:MLOpen3.ExcelLink数据管理函数(1)Matlabfcn根据给定的Excel数据执行Matlab命令。在工作表中使用时的语法:matlabfcn(command,inputs)参数command,Matlab将执行的命令,命令需要写成“command”(使用双引号引起来)的形式。参数inputs传给Matlab命令的变长输入参数列表。列表是包含数据的工作表单元格范围。函数返回单一数值或者是字符串,结果返回到调用函数的单元格中。例如matlabfcn(”sum”,B1:B10);把从B1到B10的单元格中数据相加,如下图示
6、:并将结果返回到当前的活动单元格。即A11,结果如下图。(2)Matlabsub根据给定的Excel数据执行Matlab命令,并将结果返回到指定的单元格中。在工作表中的使用语法:matlabsub(command,edat,inputs)command和inputs参数的与matlabfcn相同。参数edat,指定返回值写入在工作表中的位置。如果edat用双引号引起来,则edat必须是单元格地址或范围的名字。如果参数不用引号引起edat的形式,则通过计算获得矩阵名。例如:matlabsub(”sum”,”A1”,B1:B10);把工作表中从单元格B1到
7、B10的数据相加,并将结果返回到单元格A1中。注意:edat指定的位置不能包含matlabsub所在的位置。(3)MLAppendMatrix将Excel工作表中的数据追加到Matlab中指定的矩阵中如果该矩阵不存在,则创建矩阵。在工作表中使用的语法:MLAppendMatrix(var_name,mdat)在宏中使用的语法:MLAppendMatrixvar_name,mdat注意要追加的数据维数要和原矩阵中的维数相匹配,否则出错。例如:MLAppendMatrix(”a”,A1:A2);假设矩阵a是个2行3列的矩阵,如下图:将A1:A2中的数据追加
8、到矩阵后,如下图示成为矩阵的第四列,如下图示。单元格B1中是字符a,函数MLAppendMat
此文档下载收益归作者所有