I have data in the same excel workbook but in 10 different work sheets and i'm trying to run a loop that will read in the data from each work sheet consectutively.

this is how i've tried to do it so far and i'm not sure how to get it to work
for ii=01:10
data(ii)=xlsread('workbook.xlsx','worksheet(ii)','B10:F370');
end

 Accepted Answer

You could use xlsread along with xlsinfo.
[status,sheets] = xlsfinfo(filename);
Now, you have all the sheet names under sheets and you loop through that.
data = cell(numel(sheet),1); %pre-allocate your variable
for sheetNo = 1:numel(sheet)
data(sheetNo,1) = xlsread(filename,sheets{sheetNo},Range);
...
end
Goodluck!

3 Comments

ok, I understand what that code is doing but i'm stuggling to translate it into my data. What about this have i done wrong?
[status,sheets] = xlsfinfo('cyclist_data');
data = cell(10,1);
for sheetNo = 1:10
data(sheetNo) = xlsread('cyclist_data','sheets{sheetNo}','B10:F370');
end
  1. Your filename needs an extension --> cyclist_data.xlsx
  2. 'sheets{sheetNo}' is not how you use the variable sheets. Just look at how I used it in my example!

Sign in to comment.

More Answers (0)

Categories

Products

Release

R2018a

Asked:

on 29 Aug 2018

Commented:

on 29 Aug 2018

Community Treasure Hunt

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

Start Hunting!