How to combine multiple sheet in an excel file in to a single sheey

2 views (last 30 days)
Srikant Sekar
Srikant Sekar on 3 Sep 2021
Commented: Ive J on 4 Sep 2021
I have an excel file with multiple sheets. Each sheet has single column and 350-450 row data. Around 80-95 sheets were there.How to bring all the column in sheets in to a single sheet? i need the name of each sheet to come as header in the final compiled a beginner. Plz do help.

Accepted Answer

Ive J
Ive J on 3 Sep 2021
Follow this example:
file = "test.xlsx"; % replace your file name
names = sheetnames(file);
data = table;
for i = 1:numel(names)
data.(names(i)) = readmatrix(file, 'Sheet', names(i));
writetable(data, 'merged.xlsx')
Note it works for your case: one numeric column per each data sheet.
Ive J
Ive J on 4 Sep 2021
Are you sure you type the correct function name? it's sheetnames. Aslo what version of MATLAB do you use? sheetnames was introduced in R2019b. In case your MATLAB is older, you can use actxserver :
exl = actxserver('excel.application');
exlWkbk = exl.Workbooks;
exlFile = exlWkbk.Open(fullfile(pwd,'test.xlsx'));
nSheets = exlFile.Sheets.Count;
names = strings(nSheets, 1);
for i = 1:nSheets
names(i) = exlFile.Sheets.Item(i).Name; % sheet names

Sign in to comment.

More Answers (0)


Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!