我想在matlab for循环中编写多个表。作为输入,我使用包含多个工作表的excel文件。 Yhe张数和数据大小没有前缀。读取这些文件是正确的,但是一旦我将它保存到表中,它会一遍又一遍地覆盖同一个表。
线索将是cell2table函数中的灵活名称。我在sheetname(all)和Sheet(current)中有这些名称。有没有人有建议?
[type,sheetname] = xlsfinfo('\Matlab\dienstregeling.xlsx');
m=size(sheetname,2);
for(i=1:m);
Sheet = char(sheetname(1,i));
[num, text, raw] = xlsread('\Matlab\dienstregeling.xlsx',Sheet);
test = cell2table(raw);
end
答案 0 :(得分:0)
您可以使用变量Sheet
中的结构和generate the field names:
test = struct;
for(i=1:m);
Sheet = char(sheetname(1,i));
[num, text, raw] = xlsread('\Matlab\dienstregeling.xlsx',Sheet);
test.(Sheet) = cell2table(raw);
end