Changing WriteTable inputs for every loop and changing the "sheets" value for every loop

3 views (last 30 days)
Hey there,
So two fold, one I am trying to change the input varible each iteration in a for loop and the number of sheets. I am wanting the filename to be my 7 seperate Atl files (Alt_300, Alt_400, Alt_500...ect). Then I am wanting the value of in "sheets" varible place to go from 1 to 7 (creating a total of 7 sheets once the program has run). Alterntively I could just not use eval and just overwrite "alt" varible each time but still raises the issue of the sheets varible. There is problem a straight forward way of doing all of this but I am at a loss.
Thank you!

Answers (1)

Walter Roberson
Walter Roberson on 7 Aug 2021
i_vals = 300:100:900;
for i_idx = 1 : length(i_vals)
i = i_vals(i_idx);
filename = sprintf('Alt_%d.xlsx', i);
ind = find(altitude >= i & altitude < i+100); %not <= !!
alt = table(those variables);
sheets = sprintf('Alt_%d', i);
writetable(alt, filename, 'sheet', sheets, 'Range', 'A1');
end

Categories

Find more on General Applications 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!