필터 지우기
필터 지우기

Read thousands of xls file from a folder fast.

조회 수: 3 (최근 30일)
Razvan Inte
Razvan Inte 2019년 10월 29일
댓글: Walter Roberson 2019년 11월 12일
Hello,
I have to read 20k or more xls files from a folder. From the xls I need just the values from between C26 and C29, this values are used after in some calculations.
So far i have this script:
clc, close, clear all
folder ='Folder adress';
filetype = '*.xls';
f=fullfile(folder,filetype);
d=dir(f);
for k=1:numel(d);
data{k}= xlsread(fullfile(folder,d(k).name),'C27:C29');
a=data{1,k};
if size(a) == [0,0]
b(k) = 0;
x(k) = 0;
else
b(k)=a(3,1)/a(1,1);
x(k)=(b(k)-1)/(b(k)+1);
end
end
It take the script about 30 minuters up to an hour to read all the excel files.Sometime the excel applicaion crash during the process.
There is another method to do this faster?
How can I stop excel from crashing (stop working)?
Thank you!
  댓글 수: 3
Razvan Inte
Razvan Inte 2019년 10월 30일
The problem is not necessary the time. But I read somewhere that there is another way to import data from excel, by open excel just once throug the entire duration of the process. Anyway the main problem is that during the import process the excel stop working.
Walter Roberson
Walter Roberson 2019년 11월 12일
Do you happen to have Parallel Computing Toolbox ?

댓글을 달려면 로그인하십시오.

답변 (1개)

Siriniharika Katukam
Siriniharika Katukam 2019년 11월 12일
Hi
As per the above linked documentation, it is suggested that you use readmatrix, readcell, readtable instead of xlsread.
  댓글 수: 1
Walter Roberson
Walter Roberson 2019년 11월 12일
But how are the timings of those comapred to xlsread talking to excel ?
(I do not have a Windows system with Excel installed, so I cannot test that.)

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Spreadsheets에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by