需求:若干组excel数据从matlab导入并进行了处理,需要将处理后的数据写回excel的相应sheet中,并且,由于每组数据的数量不同,因此需要在字符串中引入变量,从而实现写入
全部代码:
% 写入SO2数据
[avgSO2R,avgSO2C] = size(avgSO2);
startSiteSO2 = 'F2';
endSiteSO2 = ['F',num2str(avgSO2R + 1)];
xlRangeSO2 = [startSiteSO2,':',endSiteSO2];
xlswrite('整理完的数据.xlsx',avgSO2,sheetCount,xlRangeSO2);
% 写入CO2数据
[avgCO2R,avgCO2C] = size(avgCO2);
startSiteCO2 = 'G2';
endSiteCO2 = ['G',num2str(avgCO2R + 1)];
xlRangeCO2 = [startSiteCO2,':',endSiteCO2];
xlswrite('整理完的数据.xlsx',avgCO2,sheetCount,xlRangeCO2);
将matlab数据写入到excel表中,用到xlswrite
xlswrite的使用格式:
四种格式中,第四种是功能最全的,也是我要用到的,其实现的功能是:将matlab数据A写入到filename.xlsx文件中sheet表中xlRange范围内
filename:xlsx文件名,如: 整理完的数据.xlsx
A:matlab中的数据,如:avgSO2
sheet:指定excel中指定的sheet,如:1 (表示第一张表,也可以用表名来指定,表明是字符串,需要用单引号括起来)
xlRange:excel范围语句,如:‘A1:A89999’ (用单引号括起来)
xlRange如何拼接?
xlRangeSO2 = [startSiteSO2,':',endSiteSO2]
每个待拼接元素间用“,”隔开,以“ [ ] ” 包起来
其输出结果是一个字符串,如 ’ A1:A89999 ’
如何在字符串中引入变量?
使用num2str
同样采用拼接的方式,字符串部分都用单引号括起来,变量部分用**num2str(变量)**转化成字符串。
实现结果:
感谢收阅