www.gusucode.com > MATLAB2008应用程序接口编程技术源码程序 > MATLAB2008应用程序接口编程技术源码程序/code/第5章/5.2/示例13/示例13.m

    %%%MATLAB自动化客户实例
%%%
%%%打开Excel,添加工作表,改变活动表格
%%%获取/放置数组,保存

%%%首先,创建一个Excel服务器
e = actxserver('excel.application');

%%%插入一个新的工作表
eWorkbook = e.Workbooks.Add;
e.Visible = 1;

%%%使第2个表格成为活动的
eSheets = e.ActiveWorkbook.Sheets;

eSheet2 = eSheets.get('Item',2);
eSheet2.Active;

%%%将MATLAB数组放到Excel中
A = [1 2;3 4];
eActivesheetRange = e.Activesheet.get('Range','A1:B2');
eActiveRange.Value = A;

%%%回到一个范围。它将是数组单元,因为单元类型可以包含不同类型的数据
eRange = e.Activesheet.get('Range','A1:B2');
B = eRange.Value;

%%%转换为double型矩阵。单元数组必须只包含标量
B = reshape([B{:}],size(B));

%%%保存工作表
eWorkbook.SaveAs('myfile.xls');

%%%不保存工作表,去表下面行的注释符
%eWorkbook.Savel = 1;
%eWorkbook.Close;

%%%退出Excel,删除服务器
%e.Quie;
%e.delete;