Cell contents assignment to a non-cell array object.
4 views (last 30 days)
Show older comments
Hey guys,
i do have this little code to program. what i dont understand is, when i run it without the inner for-loop, there is now error. when i run with the loop, there is this error that i dont understand. Anybody able to help me finding the bug ?
C = cell(28, 1);
for i=1:1:28;
C{i} = UM(i,:);
IPV = C{i,1}(1);
IB = C{i,1}(2);
IWP = C{i,1}(3);
IK = C{i,1}(4);
IWS = C{i,1}(5);
for p = 1:1:2;
Bundesland=p;
OptimierungPV_B_WP_mitWaermespeicher_Bandu_14;
Kapitalwert(1,1) = num2cell(ZFW);
if Bundesland == 1;
xlswrite('testsheet.xlsx', ...
Kapitalwert, ...
'Kapitalwerte','A1:A28');
elseif Bundesland == 2;
xlswrite('testsheet.xlsx', ...
Kapitalwert, ...
'Kapitalwerte','B1:B28');
end;
end;
end;
3 Comments
Walter Roberson
on 12 Oct 2013
The line with problems is likely
Kapitalwert(1,1) = num2cell(ZFW);
which would be a problem if Kapitalwert exists but was not a cell array at the time of the assignment.
Accepted Answer
Michael
on 14 Oct 2013
1 Comment
Walter Roberson
on 14 Oct 2013
Ah. Usually we assume that calls to user routines are functions unless they are clearly scripts.
More Answers (1)
Michael
on 14 Oct 2013
1 Comment
Walter Roberson
on 14 Oct 2013
The code you give is not going to have a problem at C{i} = UM(i,:) even if UM is a cell array. Not unless there is some additional code you have not shown, between the C = cell(28,1); and the code you show.
See Also
Categories
Find more on Matrices and Arrays 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!