Please... I want to import several excel files at once. used for_fuction
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I want to import several excel files at once. used for_fuction
I used this code.
--------------------------------------------------------------
source_dir = 'C:/Users/Cju/Documents/MATLAB/a/' ;
dest_dir = '/C:/Users/Cju/Documents/MATLAB/a' ;
source_files = dir(fullfile(source_dir, '*.xlsx'));
for i = 1:length(source_files)
data = xlsread(fullfile(source_dir, source_files(i).name));
end
--------------------------------------------------------------
In 'a'folder, there are 5 excel files.
But, Imported just first file.
Is there '*.xlsx' problem?
What is wrong?
This problem is very important for me.
Please.. Answer
0 commentaires
Réponses (2)
CS Researcher
le 2 Mai 2016
Modifié(e) : CS Researcher
le 2 Mai 2016
You can try this:
oldfolder = cd(source_dir);
xlfiles = dir('*.xlsx');
nfiles = length(xlfiles);
for i = 1:nfiles
% Access files by xlfiles(i).name (No need to use fullfile here)
end
cd(oldfolder);
3 commentaires
Image Analyst
le 2 Mai 2016
You will need to use fullfile() if the files are not in the current folder.
Don't use cd. See the FAQ: http://matlab.wikia.com/wiki/FAQ#Where_did_my_file_go.3F_The_risks_of_using_the_cd_function.
Image Analyst
le 2 Mai 2016
See the FAQ: http://matlab.wikia.com/wiki/FAQ#How_can_I_process_a_sequence_of_files.3F for reading in a sequence of xlsx files.
If you want to save all the arrays, then you will have to index data and make it a cell array (in case all workbooks don't have the same size matrices in them), so in your loop:
fullFileName = fullfile(source_dir, source_files(i).name);
data{i} = xlsread(fullFileName); % Save in one cell of a cell array.
0 commentaires
Voir également
Catégories
En savoir plus sur Spreadsheets dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!