How to change the filename in xlswrite using loop

Hello everyone,
now I am writing the one .xlsx file with 19 sheets. For which my code is working properly. This is what I am written till now
for a=1:length(sheets)
xlswrite('rough.xlsx',final{a},sheet{a},xlrange1);
end
Now what actually I want is that I need to write my answers in for different xlsx sheets. Means for every one input sheet I will get one xlsx file with 19 sheets. So, how can I change the filename with a different for loop so that for every different input sheet i will get different xlsx file with 19 sheets each.
means as I am able to change the sheets number but how to change the filename.
Thanks in advance

 Accepted Answer

for i=1:
xlswrite([strcat('Any_Initial_name',num2str(j)),'.xlsx'],file_to_write,'Sheet');
end

More Answers (1)

using xlswrite in a loop will effect performance. Try this FEX: https://de.mathworks.com/matlabcentral/fileexchange/10465-xlswrite1.
You can try the below changes
for a=1:length(sheets)
fileName = ['rough_', int2str(a), '.xlsx'];
xlswrite(fileName,ARRAY,SHEET,RANGE);
end

3 Comments

I tried what you have suggested but still I am not getting three different excel sheets as an output. only one sheet is appearing in output with a single filename
I tried with random values it is working for me. If I am not wrong length(sheets) = 3?
Just change length(sheets) =3 and let me know your results.
Thanks man.
But I tried with kalyan answer and that worked for me.

Sign in to comment.

Products

Release

R2018a

Tags

Community Treasure Hunt

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

Start Hunting!