MATLAB Answers

Run a code for all excel files in a folder?

60 views (last 30 days)
Indra
Indra on 15 Oct 2018
Commented: Bob Nbob on 17 Oct 2018
Hello, I need to run a code (Dataprocess.m) for all excel files in a folder. When I am running dataprocess.m for one file, it's working. How can I run it sequentially for all the excel files?

  1 Comment

Bob Nbob
Bob Nbob on 15 Oct 2018
I would write a for loop to run through a directory.
files = dir(folder,'*.xlsx') % Syntax here is not going to be perfect, but I'm pretty sure dir is the correct command.
for k = 1:length(files)
data_process_code_file_name_var = files(k).name % Not positive files is actually a structure class, you will have to try it
Dataprocess % Execute code
end

Sign in to comment.

Answers (2)


Indra
Indra on 16 Oct 2018
Thanks Bob, I made a loop as per your suggestion in a script:
files = dir('*.xls') % Syntax here is not going to be perfect, but I'm pretty sure dir is the correct command . for k = 1:length(files ) data_process_code_file_name_var = files(k).name; % Not positive files is actually a structure class, you will have to try it DataProcess % Execute code end
Then I run my Dataprocess.m code as below:
close all; clear all; clc; % [FileName, Pathname] = uigetfile({'*.xls';'*.xlsx'},'select the excel file'); % % % FileName = [Pathname FileName]; %FileName = '1605301321.xls'; FileName = 'data_process_code_file_name_var';
But it's not working

  3 Comments

Bob Nbob
Bob Nbob on 17 Oct 2018
What kind of error(s) are you getting? Post the message and the line as a comment and we can get back to you on it.
Indra
Indra on 17 Oct 2018
Undefined variable "files" or class "files".
Error in Untitled (line 3)
Bob Nbob
Bob Nbob on 17 Oct 2018
What is 'files' defining itself as? Does the dir() command come up with anything? Did you change it at all? You are probably going to have to, and I would suggest looking up the documentation on it first to make sure it is being applied correctly (I.e. right location, right options input, etc.).

Sign in to comment.


Translated by