Export uitable's data to a spreadsheet Excel
6 views (last 30 days)
Show older comments
Julián Francisco
on 9 Nov 2011
Commented: Vito Marangelli
on 1 Jan 2015
I have designed a GUI which has an uitable and a push button which, when is pressed, allows to export the uitable's data to an Excel spreadsheet. My problem is that I want to add the uitable's headers to the matrix Select which has the numeric values. This matrix is used by the pushbutton callback, as seen below:
htable = uitable(...);
...
SelecY = get(htable,'Data');
Callback of the pushbutton
function hExpExcelCallback(src,evt)
FileName = uiputfile('*.xls','Save as');
xlswrite(FileName,SelecY),
end
0 Comments
Accepted Answer
Fangjun Jiang
on 9 Nov 2011
You need to do some processing in the case that the table data is all numerical, because the column header is returned in a cell array. The following example uses a uitable, but should apply to the table you have in your GUI as long as you have the handle.
h=uitable('Data',rand(2,3),'ColumnName',{'a','b','c'});
Data=get(h,'Data');
ColumnName=get(h,'ColumnName');
NewData=mat2cell(Data,ones(size(Data,1),1),ones(size(Data,2),1));
CombData=[ColumnName';NewData];
xlswrite(FileName,CombData);
3 Comments
Hector Prieto
on 2 Feb 2014
Dear @Fangjun Jiang,
I tried your example, but unfortunately it only works on Windows pc and I am using Macintosh. Can you please tell me how to implement this code on Macintosh?
Cheers
Héctor
Vito Marangelli
on 1 Jan 2015
I have the same problem and I would like to know if Excel for Mac can be used with the command xlswrite
More Answers (0)
See Also
Categories
Find more on Spreadsheets in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!