How do we convert multiple csv files to execl file in matlab ?
    3 views (last 30 days)
  
       Show older comments
    
Dear experiences ...
i have multiple csv files in certain folder ("D:\original")(100+), i need to convert these files from csv to xls files and store it in ("D:\master").. i have used the following code but its give me an error in xlsread ..
Error using xlsread (line 128)
XLSREAD unable to open file 'c.csv'.
File 'C:\Program Files\MATLAB\MATLAB Production Server\R2015a\bin\c.csv' not found.
the code is in the following:
orginal='D:\original'
d=dir([original '\*.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
thanks
0 Comments
Accepted Answer
  ES
      
 on 24 May 2017
        orginal='D:\original'
d=dir([orginal '\*.csv']); %Spelling mistake here
files={d.name};
for k=1:numel(files)
   filename=files{k}; 
   fullname = fullfile(orginal,filename );%Getting the fullfile name
   [~,~,b] = xlsread(fullname) ;
   new_name=strrep(fullname,'csv','xls')
   xlswrite(new_name,b);
end
3 Comments
  Walter Roberson
      
      
 on 24 May 2017
				masterdir = 'D:\master'
xlswrite( fullfile( masterdir, new_name), b)
  Walter Roberson
      
      
 on 24 May 2017
				
      Edited: Walter Roberson
      
      
 on 24 May 2017
  
			[filedir, basename, ext] = fileparts(filename);
new_file = fullfile( masterdir, [basename '.xlsx']);
and you can get rid of some of your other lines like
new_name=strrep(fullname,'csv','xlsx')
More Answers (0)
See Also
Categories
				Find more on Workspace Variables and MAT Files in Help Center and File Exchange
			
	Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

