Combine excel files into one

20 visualizaciones (últimos 30 días)
Ancalagon8
Ancalagon8 el 19 de Oct. de 2022
Comentada: Mathieu NOE el 17 de Abr. de 2024
I want to run the code below, inside every folder i have an excel file (data.xls) and i want to compare 10 excel files into 1. Can anyone help me?
path = 'D:';
S = dir(fullfile(path, '*', 'data.xls'))
for k = 1:numel(S)
F = fullfile(S(k).folder,S(k).name);
data = readtable(F);
d = datetime(strcat(table2array((data(:,1))), {' '}, table2array((data(:,2 )))));
acceleration = table2array((data(:,3 )));
xlswrite('file.xls', data)
end
  1 comentario
Mathieu NOE
Mathieu NOE el 19 de Oct. de 2022
hello
you have to explain what data you want to extract , combine and save.
for the time being your doing things in the for loop that are not even in the saved output excel file (you r'e saving what you simply loaded from the input file)
so you have to explain your logic and probably share some input files as well if we want to test the code
all the best

Iniciar sesión para comentar.

Respuesta aceptada

Mathieu NOE
Mathieu NOE el 19 de Oct. de 2022
Editada: Mathieu NOE el 9 de Nov. de 2022
so I relicated the same folder tree and file name (same in every folder)
this is a slightly modified code , try it :
path = 'D:\2019';
S = dir(fullfile(path, '*', 'data.xls'))
for k = 1:numel(S)
F = fullfile(S(k).folder,S(k).name);
data = readtable(F);
d = strcat(table2array((data(:,1))), {' '}, table2array((data(:,2 ))));
out = [d data(:,3)]; % date / time / acceleration
out = renamevars(out,'Var1','Date & Time');
writetable(out,'file.xls',"Sheet",k)
end
  67 comentarios
Ancalagon8
Ancalagon8 el 17 de Abr. de 2024
@Mathieu NOE thank you!!
Mathieu NOE
Mathieu NOE el 17 de Abr. de 2024
as always, my pleasure !!

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Productos


Versión

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by