Hello,
I have 215 excel sheets with similar data and each file has 4 sheets. Is there a way I can read all four sheets in a file in Matlab thorugh xlsread/import opts?
--
Thanks

 Accepted Answer

Ann
Ann on 7 Jan 2021
Hi, Pratha.
I'm not sure if it helps or not because I also have similar situation with you but my parameter can combine in one excel file.
TimeP1=xlsread('Book001.xlsx','PRN1','A:A');
PRNP1=xlsread('Book001.xlsx','PRN1','B:B');
S4P1=xlsread('Book001.xlsx','PRN1','C:C');
%_______________read PRN1_______________%
TimeP2=xlsread('Book001.xlsx','PRN2','A:A');
PRNP2=xlsread('Book001.xlsx','PRN2','B:B');
S4P2=xlsread('Book001.xlsx','PRN2','C:C');
%_______________read PRN2_______________%
In another word:
ParameterP1 = xlsread('your excel file with format','your tab name in that excel','column selected');

2 Comments

dpb
dpb on 7 Jan 2021
Edited: dpb on 7 Jan 2021
The above is quite inefficient in opening/closing the Excel workbook three separate times for each sheet; six times altogether in addition to the fact that xlsread is deprecated.
Use readtable instead
tTable1=xlsread('Book001.xlsx','Sheet','PRN1','Range','A:C');
Then reference the variables as
tTable1.Time
etc., ...
With multiple workbooks or sheets, you could further compact by using an array of tables.
Thanks sir, for your recommendations and it do helps!

Sign in to comment.

More Answers (1)

dpb
dpb on 5 Jan 2021

1 vote

xlsread has been deprecated; use readcell, readmatrix, readtable instead depending on how you want the data returned and the content of the spreadsheet.
None of these including xlsread has the facility to return more than a single sheet per invocation; you'll just have to loop over the sheets in each workbook in turn.

Asked:

on 5 Jan 2021

Commented:

Ann
on 9 Jan 2021

Community Treasure Hunt

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

Start Hunting!