Index exceeds matrix dimensions

1 view (last 30 days)
Nagham Kabbara
Nagham Kabbara on 15 Nov 2015
Commented: Nagham Kabbara on 16 Nov 2015
Please find below my code:
readdata=get(handles.uitable2,'data');
readdata=cellfun(@num2str, readdata, 'UniformOutput', false);
[nr,nb]=size(readdata);
for k=1:nr
disp(k)
disp(readdata(k,7))
if strcmp(readdata(k,7),'1')==1
readdata(k,:)='';
range=strcat('J',num2str(indexvec(k)+1));
xlswrite('cylinders record.xls','1','Record',range)
if strcmp(readdata(k,8),'1')==1
range=strcat('K',num2str(indexvec(k)+1));
xlswrite('cylinders record.xls','1','Record',range)
end
end
end
set(handles.uitable2,'data',readdata)
the problem is that i'm getting an error msg that the index exceeds the matrix even though i am making the loop knowing the size of the matrix!!!!
please note that the 7th and 8th column of readdata are of logical format (checkboxes)!!
i would like to add that when no checkbox is checked i don't face this problem, it only occur when a checkbox is checked
  5 Comments
Nagham Kabbara
Nagham Kabbara on 16 Nov 2015
the error happens for k=nr-1.
i am converting the num to str because i am unable to read them as numbers (the 0 and 1 are equivalent to false and true, result of checking and unchecking the checkboxes)
Nagham Kabbara
Nagham Kabbara on 16 Nov 2015
i found the problem guys!!!!!
everytime a '1' is found the row is deleted and the array changes of size.
thank you all for your help

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!