How can write multiple Excel sheets into one excel file?
47 次查看(过去 30 天)
显示 更早的评论
Hi Everyone,
I am stuck with writing multiple Excel sheets into one Excel file. I have 31 sheets contained 1 Excel workbook and successfully imported them with " readtable" function with the help of for loop of of course.
However, when I try to add them horizontally and create a single workbook, it seems impossible. I have just wrote a simple function to do that task as follows:
function sheetss(filename,portion) % I Enter the file name as 'filename.xls' and the portion as 'A2:D1002' to extract only a part of the values.
sheets = sheetnames(filename);
T = cell(1,31); % preallocation
for i = 1:31
T{i} = readtable(filename,'Sheet', sheets{i},'Range',portion);
end
table(T{:}); % trying to extract all embedded tables in cell arrays
writetable(T,'Result.xlsx')
0 个评论
采纳的回答
meghannmarie
2020-6-26
I do not know if this is best way, but try this after your for loop:
C = cellfun(@table2cell,T,'UniformOutput',false); % Converts all the tables in the cells to cell arrays
C = [C{:}]; % Horizontally concatonates all the cell arrays into one cell array.
writecell(cells,'Result.xlsx'); %Writes cells to excel
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Spreadsheets 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!