How to include a variable in "xlswrite" matrix name and cell range?

3 Ansichten (letzte 30 Tage)
Dear members,
I want to include variables x,x1 and x2 in the following function, where x represents the matrix and xls file names and x1 x2 represent the range overwhich the matrix will be written in excel.
xlswrite('Jx.xls',Jx,'Ax1:Bx2')
This function will be written in a "double for loop" that subtitutes x first then x1 x2 thus generating multiple excel files.
Thank you!

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 29 Okt. 2019
Put your arrays into a single cell array Jx
filename = sprintf('J%d.xls', x);
range = sprintf('A%d:B%d', x1, x2);
xlswrite(filename, Jx{x}, range);
You might have noticed that I did not dynamically generate variable names J1 J2 and so on to write out. See http://www.mathworks.com/matlabcentral/answers/304528-tutorial-why-variables-should-not-be-named-dynamically-eval
  2 Kommentare
Ahmad Fakih
Ahmad Fakih am 29 Okt. 2019
Thank you, works well except Jx{x} form isn't working.
Ahmad Fakih
Ahmad Fakih am 29 Okt. 2019
Nevermind, figured it out and it works well. Thanks again!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Produkte


Version

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by