loop iteration of table in excel

1 view (last 30 days)
Hashvi Sai
Hashvi Sai on 27 Jul 2021
Commented: Peter Perkins on 28 Jul 2021
Hi,
Im new to matlab.
I have a complex program of EEG data analysis. i get 6 outputs, each of which needs to be written in a different sheet in excel, without erasing the previous. which is the best suitable function? can someone pls help me with the code
TIA

Answers (2)

Albert Bing
Albert Bing on 27 Jul 2021
xlswrite(filename, Data, sheet)
e.g.
A = randn(4,3,6);
filename = 'test.xlsx';
for i=1:6
xlswrite(filename, A(:,:,i), i);
end
  1 Comment
Peter Perkins
Peter Perkins on 28 Jul 2021
xlsread and xlswrite are NOT recommended any more. readtable/writetable or readmatrix/writematrix are the way to go.

Sign in to comment.


Dave B
Dave B on 27 Jul 2021
How about writetable? It has a 'Sheet' option:
t=readtable('patients');
t2=readtable('morePatients')
writetable(t,'foo.xls','Sheet',1)
writetable(t2,'foo.xls','Sheet',2)
  2 Comments
Hashvi Sai
Hashvi Sai on 28 Jul 2021
hi Dave
How do i append?
Dave B
Dave B on 28 Jul 2021
Hashvi :
The writetable documentation page has an example with appending, I looks like it's as easy as specifying 'WriteMode', 'append' with the command but I haven't tried it. You can also write directly to a specific range. writetable has lots of options and a great documentation page with several examples, I recommend having a look !
(Alternatively, you could read, append, and write the whole thing, or you could try the xlsappend file exchange submission which looks quite popular)
Best ,
Dave

Sign in to comment.

Products

Community Treasure Hunt

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

Start Hunting!