How can I use use the index in a FOR loop in a string?
1 view (last 30 days)
Show older comments
I need use cycle FOR for String (for Excel write).
For example:
N=10;
for i = 1:N-1
xlswrite('test.xls',F0,brd{i},'A1') %I need change 1 to 2...N
end
How can I do that?
1 Comment
Todd Flanagan
on 20 Jan 2011
Hi Pepa. I deleted your "Thanks" answer and added it as a comment to Andreas' answer.
Accepted Answer
Andreas Goser
on 20 Jan 2011
While I suggest using the XLSWRITE syntax,
xlswrite('test.xls',F0,brd{i},'A1:A10')
this may just an example code. I personally often work with the EVAL command:
N=10;
for i = 1:N-1
eval(['xlswrite(''test.xls'',F0,brd{i},''A', num2str(i), ''');'])
end
I think there are other options too.
5 Comments
More Answers (3)
Doug Hull
on 20 Jan 2011
I think this is the cleanest way to do this.
N=10;
for i = 1:N-1
colName = ['A' num2str(i)];
xlswrite('test.xls',F0,brd{i}, colName) %I need change 1 to 2...N
end
0 Comments
Walter Roberson
on 20 Jan 2011
Or for those who prefer the lower-overhead sprintf:
N=10;
for i = 1:N-1
xlswrite('test.xls',F0,brd{i}, sprintf('A%d',i))
end
Richard de Garis
on 26 Jan 2011
The above solutions are elegantly simple and will serve your current need perfectly. If in the future you require to iterate along Excel columns and/or change the size of the Excel range, I just published a function that will enable you to do that. http://www.mathworks.com/matlabcentral/fileexchange/30180-calculate-excel-range
0 Comments
See Also
Categories
Find more on Logical 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!