generating files using loop or other functions
1 view (last 30 days)
Show older comments
Abdulkarim Almukdad
on 26 Oct 2020
Commented: Sudhakar Shinde
on 27 Oct 2020
I have the attached data and I want to create an excel sheet with name Test1 that includes the 1st column with the 2nd column, then to create another files with name Test2 that includes the 1st column with the 3rd column and so on assuming I have many columns. Thanks in advance.
2 Comments
Stephen23
on 27 Oct 2020
Edited: Stephen23
on 27 Oct 2020
To future readers: the accepted answer uses inefficient, complex code to access the table variables.
Do NOT follow this bad code example!
My comment below the answer shows the simpler, neater, less buggy, easier to debug, and much more efficient approach (i.e. the one given in the MATLAB documentation). Do NOT learn bad ways of writing MATLAB code.
Accepted Answer
Sudhakar Shinde
on 27 Oct 2020
Use readtable and writetable functions.
Data=readtable('x1)Data.xlsx'); % Read excel data
[R,C]=size(Data); % get number of columns
VariableNames = Data.Properties.VariableNames; % Name of each column heading
for i=2:C
Out.Nu = eval(['Data.',VariableNames{1}]); % 1st column
Out.Var = eval(['Data.',VariableNames{i}]) ;
Table = table(Out.Nu,Out.Var);
writetable(Table,['Test' num2str(i-1),'.xlsx']); %%write into excel exmaple: Test1.xlsx
end
5 Comments
More Answers (0)
See Also
Categories
Find more on Spreadsheets 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!