作者:乔山办公网日期:
返回目录:excel表格制作
将数据保存到excel文件
xlswrite(xlsfile, data, sheet, range); % sheet 和 range可以不指定
如:
xlswrite('d:\test.xls', data, 'sheet1'); % 将data写入test.xls的工作表sheet1中
从excel文件中读数据, 不建议一行一行读, 效率太低, 可直接用xlsread把工作表中的内容全部读出来
[N, T, rawdata] = xlsread(xlsfile, sheet, range); % sheet 和 range可以省略
xlsfile是excel文件的地址,sheet是excel文件中指定的工作表, range是工作表中要读取数据的范e799bee5baa6e997aee7ad94e59b9ee7ad94335围
N是数字型数据, T是文件型数据, rawdata是所有数据(cell型)
如
[~, ~, rawdata] = xlsread('d:\tmp.xls', 'sheet1'); % 把tmp.xls的工作表sheet1中的内容全部读出至rawdata中, rawdata{i, j}就是工作表第i行,第j列的数据
关于xlsread和xlswrite的更多用法可以查看matlab的帮助
把 cell 矩阵写入复 excel 文件很简单,制cell2table 变成 table格式,writetable函数就可以了知。
举个例子:道
C = {'Atkins',32,77.3,'M';'Cheng',30,99.8,'F';'Lam',31,80.2,'M'}
T = cell2table(C,'VariableNames',{'Name','Age','Result','Gender'});
writetable(T,'tabledata.xlsx')
用xiswrite函数百。举个例子 xlswrite('a.xls',b,'sheet1','A1'); a.xls是excel文件名,b是要输出的矩阵名字,可以是工度作空间也版可以是硬盘里的,sheet1是excel里的工作簿,A1是开始输出的单元格权。
timeData={datestr(now,30)};
paraData=[1 2.980.34 23.9];
if~exist('myData.xlsx','file')
xlswrite('myData.xlsx',timeData,1,'A1');
xlswrite('myData.xlsx',paraData,1,'B1');
else
[tmp1,tmp2,tmpRaw]=xlsread('myData.xlsx');
if size(tmp1,1)==0&&size(tmp2,1)==0%是否是空文档
mRowRange='1';
else
mRowRange=num2str(size(tmpRaw,1)+1);
end
xlswrite('myData.xlsx',timeData,1,['A'mRowRange]);
xlswrite('myData.xlsx',paraData,1,['B'mRowRange]);
end
实现方案:
判断是否存在目标Excel文件。
不存在,创建目标excel文件,存储数据
已存在,读取目标excel文件行数7a686964616fe58685e5aeb9334,确定存储范围,存储数据
试试上面的方案。