xlswrite不覆盖

我需要使用.xlswrite将GUI数据导出到Excel。 目前我可以将它写入Excel中,但是因为我必须重复整个过程总共20次,这意味着我必须在Excel中存储至less20行。 我已经尝试在网上search,但有网站说,使用“xlsappend”,我不明白如何使用,似乎是得到一个错误。

有什么办法可以去做吗?

我目前的代码:

xlswrite('File.xls', {'SubjectID:'},'Sheet1','A1'); xlswrite('File.xls', {name},'Sheet1','A2'); xlswrite('File.xls', {'Radiobutton: '},'Sheet1','B1'); xlswrite('File.xls', {Radiobutton},'Sheet1','B2'); 

另外,是否可以在这个和下一组数据之间划一条线?

我build议你不要硬编码你想写数据的单元,而是使用一个dynamic变化的范围,例如在一个循环中。

最直观的方法是使用Excel的行列符号(即R1C1 ,而不是A1 ;另请参阅: link1 , link2 )。 但是,从MATLAB 2015b Excel不接受这种表示法,它必须转换为A1样式,使用如下代码:

 function a1name = GenerateExcelA1(rows,cols) a1name = [char(base2dec(dec2base(cols,26)',26)+64)' num2str(rows)]; end 

(您可以将上面的文件放在单独的文件中,例如GenerateExcelA1.m ,或者如果是多function脚本,则放在同一个文件中)

你的代码会看起来像这样:

 %// Definitions: SUBJECT_TAG_COL = 1; SUBJECT_VAL_COL = 2; RADIO_TAG_COL = 3; RADIO_VAL_COL = 4; for ind1=1:numLines %// if you also want empty lines, replace with ind1=1:2:2*numLines %// Make sure data is available, then: xlswrite('File.xls', {'SubjectID:'},'Sheet1',GenerateExcelA1(ind1,SUBJECT_TAG_COL)); xlswrite('File.xls', {name},'Sheet1',GenerateExcelA1(ind1,SUBJECT_VAL_COL)); xlswrite('File.xls', {'Radiobutton: '},'Sheet1',GenerateExcelA1(ind1,RADIO_TAG_COL)); xlswrite('File.xls', {Radiobutton},'Sheet1',GenerateExcelA1(ind1,RADIO_VAL_COL)); end 

另外考虑xlswrite1这应该是更快。