Xlswrite in a loop
3 views (last 30 days)
Show older comments
Hello,
I want to include xlswrite in a loop. For each pass through the loop, I will write two columns of data to the same Excel sheet. The columns will be continuous. For a few columns I can manually specify the columns to which I write the data. So first pass I will write to cells A1:B12, second pass C1:D12, and so on.
Is there some function in matlab that has the alphabet? I could then call this function and get the letters from the alphabet. I could then generate the ID of the Excel columns automatically.
Thanks so much!
0 Comments
Accepted Answer
More Answers (1)
Cedric
on 22 Mar 2013
Edited: Cedric
on 22 Mar 2013
It would be more efficient to build an array (or a cell array if you have inhomogeneous/non-numeric content) in the loop, and to export the whole array in one shot at the end. This way, you avoid having to build these complicated column codes. Example:
nBlock = 5 ;
blockSize = [12, 2] ;
content = zeros(blockSize(1), nBlock*blockSize(2)) ;
for k = 1 : nBlock
rowRange = 1 : blockSize(1) ;
colRange = [1,2] + (k-1)*blockSize(2) ;
block = 10*k + rand(blockSize) ; % Some random content.
content(rowRange,colRange) = block ;
end
% One shot output to XLSX file; observe that there is no range information.
xlswrite('myFile.xlsx', content, 'RandomWithOffset') ;
0 Comments
See Also
Categories
Find more on Spreadsheets in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!