Convert multiple csv to xls files.
19 views (last 30 days)
Show older comments
avantika
on 25 Oct 2013
Commented: Marcos dos Santos
on 16 Apr 2021
Hi!
I have a folder containing many excel files ( more than 200) in csv format . I need to write all these files in xls format.
Can this be done in matlab . Can anyone please help.
Thanks in advance
0 Comments
Accepted Answer
Azzi Abdelmalek
on 25 Oct 2013
Edited: Azzi Abdelmalek
on 25 Oct 2013
yourfolder='E:\matlab'
d=dir([yourfolder '\*.csv']);
files={d.name};
for k=1:numel(files)
old_name=files{k};
[~,~,b] = xlsread(old_name) ;
new_name=strrep(old_name,'csv','xls')
xlswrite(new_name,b);
end
7 Comments
Walter Roberson
on 1 Jun 2018
More correct would be
yourfolder = 'E:\matlab'
d = dir(fullfile(yourfolder, '*.csv'));
files = {d.name};
for k=1:numel(files)
old_name = files{k};
[~,~,b] = xlsread( fullfile(yourfolder, old_name)) ;
new_name = strrep(old_name,'csv','xls')
new_folder = 'E:\another'
new_file = fullfile(new_folder, new_name)
xlswrite(new_file,b);
end
Onur ALPAY
on 8 Dec 2020
Hi,
I am using MATLAB 2019a version and it looks there is no problem with version. I try this code but I realized that the below code doesn't work. It gives me the same file name. Do you have any experiance about that?
new_name = strrep(old_name,'csv','xls')
More Answers (2)
Fabian Neira
on 1 Jun 2018
I got the following error "File name must be a character vector" when using the code.
Lotan Jackson
on 25 Aug 2020
Hi everyone, I know this is an old question but I had to adjust things for either the newest version or being on a newest matlab version. Here's the code. I placed all the files in the folder with the script.
file = dir('*.csv');
s= size(file,1);
for i= 1:s
Data = readtable(file(i).name);
filename=file(i).name;
filename= filename(1:end-5);
writetable(Data,[filename '.xls']);
end;
Hope this helps anyone in the future. :)
See Also
Categories
Find more on Spreadsheets in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!