File name as value of a variable

111 views (last 30 days)
Shawn
Shawn on 24 Jun 2019
Edited: Adam Danz on 14 Feb 2024
Would you please guide me how to write Excel files whose names are value of a variable, e.g. testdata_i where i is a variable?
This is the code I have that needs some adjustments. Data is a matrix whose values is decided in another loop.
for i = 1:5
filename = sprintf('%s_%d','testdata',i)
writematrix(Data,'filename.xlsx')
end

Accepted Answer

Adam Danz
Adam Danz on 24 Jun 2019
Edited: Adam Danz on 24 Jun 2019
You were really close. You just forgot to use the filename variable.
for i=1:5
filename = sprintf('testdata_%d.xlsx',i);
writematrix(Data,filename)
end
I recommend using absolute paths that specify where the file will be stored by using fullfile()
d = 'C:\Users\name\Documents\MATLAB';
for i=1:5
filename = sprintf('testdata_%d.xlsx',i);
writematrix(Data,fullfile(d,filename))
end
  2 Comments
madhan ravi
madhan ravi on 24 Jun 2019
+1, SHAWN this answer , answered your question already. Had the same thing in mind but messsed up my answer.
Shawn
Shawn on 24 Jun 2019
It's working like a charm!
Thank you Adam and Madhan for your quick responses.

Sign in to comment.

More Answers (0)

Categories

Find more on Environment and Settings in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!