How to change the variable name in the loop
Show older comments
I want to use this syntax in a loop, but i can't find out why it does not work. I know, I should use the eval function, but somewhere there has to be a problem in the syntax. Could you help me to fix it?
thanks, Roley
I want to change te i variable in the code:
for to i=1:2 eval(['xlswrite('D:\Pénzügyek\Market\Trading System\Neural networks\FORECASTING MODELL\Modells\' num2srt(i) '.xlsx', modell ' num2srt(i)', 'data','A1')])
end
Accepted Answer
More Answers (4)
Jos (10584)
on 28 Feb 2014
These kind of problems can be easily avoided using another approach
In pseudocode:
data(1).values = ...
data(2).values = ...
for K = 1:numel(data)
filename = ['d:\test\model' num2srt(K) '.xlsx']
xlswrite(filename, data(K).values)
end
1 Comment
Stephen23
on 4 Jan 2015
Seconded. Avoid eval, and stick with structs and cell arrays.
Chandrasekhar
on 28 Feb 2014
for to i=1:2
str = ['D:\Pénzügyek\Market\Trading System\Neural networks\FORECASTING MODELL\Modells\' num2str(i) '.xlsx, modell' num2str(i) ', data, ''A1'''];
eval(['xlswrite(' str ')'])
end
Iain
on 28 Feb 2014
for to i = 1:2
The "to" should be removed.
The string you're trying to evaluate is nutty.
To form a string like the one you want:
['xlswrite(''d:\folder\folder\filename' num2str(i) '.xls'', modell' num2str(i) ', ''data'',''A1'')]
If you want a single ' in a string, you need to use two of them. i.e. '''' gives you a string with '
Roland
on 28 Feb 2014
0 votes
Categories
Find more on App Building 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!