loading multiple excel files in a loop
1 次查看(过去 30 天)
显示 更早的评论
I have thousands of excel files that contain data in a 1440x~35 array. I only need a few columns in each file. The excel files are logically ordered with the pattern 1018ahua.xls, 1019ahua.xls, etc. I have tried loading columns in a loop using the xlsread command in a variety of ways and am always unable to do it. I use Matlab R2010b. Can anyone help me?
0 个评论
采纳的回答
Friedrich
2011-7-15
Hi,
first of all doing a xlsread in a loop is a bad idea since you always open and close the EXCEL COM Server. You have to do it manually in a better way, like:
%open Excel
ex = actxserver('excel.application');
for i=1:thousands_of_excel_files
ex.Workbooks.Open('C:\absolut_path_to file\filename.xls')
out = get(ex.Range('B3:D6'),'Value')
end
ex.Quit
So if its really ordered like 1018ahua.xls, 1019ahua.xls and so on you can do
%open Excel
ex = actxserver('excel.application');
for i=1018:thousands_of_excel_files
ex.Workbooks.Open(['C:\absolut_path_to file\',num2str(i),'ahua.xls'])
out = get(ex.Range('B3:D6'),'Value')
end
ex.Quit
4 个评论
Image Analyst
2014-8-20
Katerina, start your own thread and attach your code (m-file) and full description of what "does not work" means to you (screenshots, error messages, etc.)
Himmat
2015-9-18
Hello Fredrich, I tried to use this code and facing a problem that output data is only from last excel sheet. I want to import column 1 and 3 from each excel file from a group of 10 and put it in one matrix. Can you suggest a way to do it. Thank you for your help.
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Spreadsheets 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!