2013-08-22 2 views
0

Код ниже - это минимальный рабочий пример моего проблемного кода. На самом деле, мне нужно импортировать 40 таблиц. Код работает, за исключением того, что переменные herfs, gamma и vs перезаписываются в каждом цикле. Мне нужен способ индексирования переменных, чтобы данные не переписывались.Импорт 40 листов с использованием петли

s.AUS=1; 
s.AUT=2; 
s.USA=39; 
s.IND=40; 
fn=fieldnames(s); 
for y = fn' 
    file = str2mat(strcat(y,'_herf')); 
    herfs = xlsread(file, 'herf'); 
    gamma = xlsread(file, 'gamma'); 
    vs = xlsread(file, 'v'); 
end 

ответ

2

массивы Использование клеток (внутри цикла):

for ii = 1:numel(fn) 
    y = fn{ii} 
    hrefs{ii} = xlsread(file, 'herf'); 
    gamma{ii} = xlsread(file, 'gamma'); 
    vs{ii} = xlsread(file, 'v'); 
end 
+1

у = имя_поля -> неплохо было бы добавить: при у = 1: длина (п) ... –

+0

@LuciusDomitiusAhenobarbus - правильно , Я отредактировал свой ответ, чтобы отразить ваш комментарий. Благодарю. – Shai

Смежные вопросы