Clear Filters
Clear Filters

Converting a cell array to excel file using write table - how to add headers and sheet name?

11 views (last 30 days)
I am able to convert the 'THRESH_DATA' variable inside the attached to an Excel file - this is how my code does it (thanks, @Voss):
filename = 'THRESH_DATA.xlsx';
n = size(THRESH_DATA,1);
for ii = 1:n
T = table(THRESH_DATA{ii,:});
writetable(T,filename,'Sheet',ii);
end
The next step (which I was hoping to handle myself) is to include column headers and sheet names. For sheet names, I thought of:
% sheetNames = ('2000', '2001', '2002','2003', '2004', '2005','2006', '2007', '2008','2009', '2010', '2011',...
% '2012', '2013', '2014','2015', '2016', '2017','2018', '2019', '2020','2021', '2022');
writetable(T,filename,'Sheet',ii,'sheetNames')
but that doesn't work. Drawing from other posts (most using xlswrite), I thought I could used variableNames, somehow. Thanks!

Accepted Answer

Voss
Voss on 9 Feb 2024
filename = 'THRESH_DATA.xlsx';
sheetNames = string(2000:2022);
% replace this with the variable names you want:
varNames = ["Time","X","Y","Z","AA","BBB","LMNOP","EIGHT","NOINE"];
n = size(THRESH_DATA,1);
for ii = 1:n
T = table(THRESH_DATA{ii,:},'VariableNames',varNames);
writetable(T,filename,'Sheet',sheetNames(ii));
end

More Answers (1)

VBBV
VBBV on 9 Feb 2024
Edited: VBBV on 9 Feb 2024
sheetNames = {'2000', '2001', '2002','2003', '2004', '2005','2006', '2007', '2008','2009', '2010', '2011',...
'2012', '2013', '2014','2015', '2016', '2017','2018', '2019', '2020','2021', '2022'};
writetable(T,filename,'Sheet',sheetNames{ii})
  2 Comments
VBBV
VBBV on 9 Feb 2024
Declare the sheetNames as cell array and access the elements of cell array using the index of for loop
VBBV
VBBV on 9 Feb 2024
Edited: VBBV on 9 Feb 2024
The '(' ')' are usually used as function definition calls, you could also use concatenation operator [ ] instead of curly braces { }

Sign in to comment.

Products


Release

R2023b

Community Treasure Hunt

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

Start Hunting!