MATLAB Answers

I have 10 rows and four columns in variable two. I want to write one row in one cell, 2nd row in 2nd cell, 3rd row in 3rd cell and so on into an Excel file using Matlab. How can I do this?

1 view (last 30 days)
Sadiq Akbar
Sadiq Akbar on 17 Oct 2019
Commented: Sadiq Akbar on 18 Oct 2019
I have a Matrix in Matlab Workspace having floating point data. The order of the matrix is 10x4. I want to write 1st row in A1 cell, 2nd row in A2 cell, 3rd row in A3 cell and so on into an Excel file using Matlab. How can I do that?
Regards,
Sadiq Akbar
  1 Comment
Guillaume
Guillaume on 17 Oct 2019
Why on earth do you want to do this? Excel does not support having several numbers in a cell, so the only way it can be done is by writing the data as text in the cell (easily done if needed) which would make the data useless for further processing in excel.

Sign in to comment.

Accepted Answer

xi
xi on 17 Oct 2019
use num2str() to convert your 10X4 numeric matrix into 10 strings.
Then use xlswrite() to write string into Excel cells.
Here's an example
filename='myfile.xlsx';
M=rand(10,4);
str=num2str(M);
for i=1:size(str,1)
xlswrite(filename, cellstr(str(i,:)), 'Sheet1', ['A',num2str(i)]);
end
  5 Comments
Sadiq Akbar
Sadiq Akbar on 18 Oct 2019
Thank you very much Xi for your interactive responses. And yes, I solved the problem. Thank you once again.
Regards,
Sadiq Akbar

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by