How to write the output of matlab iteration results of many equations in excel in row by row specifying the starting row?

5 views (last 30 days)
Hi, I have a code that is as follows (this is simplified):
-----------------------------
for Xref1=0:0.1:1 % Loop through the range of inputs
Xref1;
Hi=Xref1*10;
Lo=Xref1*5;
file_location=['C:\Users\Desktop\data.xls'];
col_header={'Hi','Lo',};
out_put={Hi(:),Lo(:)};
xlswrite(file_location,col_header,'Sheet1','A1');% Prints column headers
xlswrite(file_location,out_put,'Sheet1','A2'); % Prints outputs
end
----------------
This only prints and saves the last iteration in row A2.
The objective is to save all the iteration results starting from A2. Is anyone able to suggest how this can be possible?
Thanks

Accepted Answer

VBBV
VBBV on 31 Jul 2023
Edited: VBBV on 31 Jul 2023
k = 1;
for Xref1=0:0.1:1 % Loop through the range of inputs
Xref1;
Hi=Xref1*10;
Lo=Xref1*5;
out_put(k,:)={Hi,Lo};
k = k+1;
end
% outside of loop
file_location=['C:\Users\Desktop\data.xls'];
col_header={'Hi','Lo',};
xlswrite(file_location,col_header,'Sheet1','A1');% Prints column headers
xlswrite(file_location,out_put,'Sheet1','A2'); % Prints outputs
  1 Comment
VBBV
VBBV on 31 Jul 2023
Edited: VBBV on 31 Jul 2023
Inside the loop the Hi and Lo values are scalar , you need to create vector of values and write them Excel file sheet over a range of cells e.g. A2 : B6 . A better function writing to Excel file is to use *writematrix* instead of *xlswrite*

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements 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!