Renaming a Excel file from an array
Show older comments
Hello everyone!
I am facing problem in renaming my Excel file. I have a defined variable with values (5x1 double)
values=[0.0082;0.0083;0.0086;0.0087;0.0082];
There is a matfile (test.mat) which have values of variables (a,b and c)
All_values=values;
for i =1:numel(All_values)
values=All_values(i)
T = table(a{1,i}.time, oo{1,i}.signals.values, pp{1,i}.signals.values) %values from .mat file
writetable(T{i},'Check_%i.xlsx',values) %somewhere here is the issue
end
What I want is to rename my file like 0.0082.xlsx, then comes 0.0083.xlsx, 0.0086.xlsx, 0.0087.xlsx and 0.0082.xlsx. The code is running fine till the values of T (making a table). Any help to rename the file would be highly appreciated. Thanks!
6 Comments
Sugar Mummy
on 22 Jan 2022
Sugar Mummy
on 22 Jan 2022
Stephen23
on 22 Jan 2022
T = table(..);
writetable(T{i},..)
% ^^^ get rid of this indexing, it will throw an error.
Sugar Mummy
on 22 Jan 2022
Stephen23
on 22 Jan 2022
Your WRITETABLE call does not follow any syntax shown in the documentation.
It looks you are attempting to create a filename using values, in which case you need to use SPRINTF:
F = sprintf('Check_%i.xlsx',values);
writetable(T,F)
Sugar Mummy
on 23 Jan 2022
Answers (1)
KSSV
on 22 Jan 2022
All_values=values;
for i =1:numel(All_values)
values=All_values(i)
T = table(a{1,i}.time, oo{1,i}.signals.values, pp{1,i}.signals.values) %values from .mat file
fname = ['Check_',num2str(i),'xlsx'] ;
writetable(T{i},fname,values)
end
1 Comment
Sugar Mummy
on 22 Jan 2022
Categories
Find more on Data Import from MATLAB 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!
