How to Split excel file with multi columns into equal smalller excel files using matlab
이전 댓글 표시
Please how can splitting Excel file (n*m) into smallaer equal excel files by matalb
댓글 수: 5
darova
2019년 10월 18일
What is criteria of splitting (what size)? What have you tried?
Furat Alobaidy
2019년 10월 18일
darova
2019년 10월 18일
What about for loop?
dpb
2019년 10월 19일
"... excel( around (500,000) rwos , I need splitting them into seperate excel files in equal size , (for example each file arround 100000 rows"
Why do they need to be split into files, specifically?
Why not just process the parts desired in memory?
Furat Alobaidy
2019년 10월 19일
답변 (1개)
Payas Bahade
2019년 10월 21일
Hi Furat,
I have written a code which can be used to split one large excel file into multiple smaller excel files. Following sample code splits given excel file into 3 smaller files of 50 rows each.
inputFile = 'test11';% Input excel file name
M = 50; % Number of rows to be included in splitted excel files
N = 3; % Number of files to be created
for k = 0:N-1
outputFile = [ inputFile num2str(k+1,'%02i') '.xlsx' ];% Output file name
cellRange=[ 'A' num2str(M*k+1) ':' 'D' num2str(M*k+M) ];% Defining area of input excel file to be written in output file
X=readmatrix('test11.xlsx','Range',cellRange);% Reading required area in input excel file
writematrix(X,outputFile);% Writing required area in output file
end
You can achieve your objectives by changing the above code as per your requirements.
Hope this helps!
댓글 수: 6
Furat Alobaidy
2019년 10월 21일
dpb
2019년 10월 21일
readmatrix not introduced until pretty recently--don't remember which release, precisely.
Furat Alobaidy
2019년 10월 21일
Furat Alobaidy
2019년 10월 25일
Payas Bahade
2019년 10월 31일
Hi Furat,
To resolve the above issue of 'C' column not been read, specify 'OutputType' as 'string' in 'readmatrix' function. Please use code mentioned below:
inputFile = ('book1F');% Input excel file name
M = 100; % Number of rows to be included in splitted excel files
N = 20; % Number of files to be created
for k = 0:N-1
outputFile = [ inputFile num2str(k+1,'%02i') '.xlsx' ];% Output file name
cellRange=[ 'A' num2str(M*k+1) ':' 'D' num2str(M*k+M) ];% Defining area of input excel file to be written in output file
X=readmatrix('book1F.xlsx','Range',cellRange,'OutputType','string'); % Reading required area in input excel file
writematrix(X,outputFile);% Writing required area in output file
end
Hope this helps!
Furat Alobaidy
2019년 11월 4일
카테고리
도움말 센터 및 File Exchange에서 Spreadsheets에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!