string input for xlsread of a sheet

6 次查看(过去 30 天)
I am trying to get the program to read the sheet names, filter the sheet names in the excel file and place all that fit the category in it's own array and then use that array as inputs for the sheet name in a for loop. I'm getting the following error:
Error using xlsread (line 139) Sheet argument must be a string or an integer.
%Data Read Test%
file = 'file.xlsx';
[status,sheets] = xlsfinfo(file);
%Data Classification%
sheetmatch = strmatch('DLC',sheets);
cases = sheets(:,sheetmatch);
n = size(cases,2);
for i=1:n
s = cases(i);
new_s = strrep(s,'_','-');
%time read%
t = xlsread(file,s,'E7:E12006')
%sampling frequency%
fs = 1/(t(2,:)-t(1,:));
%pitching moment reads%
b1 = xlsread(file,s,'F7:F12006')
b2 = xlsread(file,s,'G7:G12006')
b3 = xlsread(file,s,'H7:H12006')
end;
so what it's telling me is that it's not seeing the variable s as a string. Is there a way to get it so that the variable s (which changes with each step of i) to be input as the string for the sheet name which i'm trying to call?
Current cases matrix: The current cases matrix is as follows:
Columns 1 through 3
'DLC_1' 'DLC_2' 'DLC_3'
Columns 4 through 6
'DLC_4' 'DLC_5' 'DLC1_6'
Column 7
'DLC_7'
Thanks, Travis

采纳的回答

Sara
Sara 2014-6-6
cases is a cell array, use:
cases{i}

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Cell Arrays 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by