Convert multiple csv to xls files.
    7 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 Loops and Conditional Statements 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!







