Combine excel files into one

조회 수: 20 (최근 30일)
Ancalagon8
Ancalagon8 2022년 10월 19일
댓글: Mathieu NOE 2024년 4월 17일
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
Mathieu NOE
Mathieu NOE 2022년 10월 19일
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

댓글을 달려면 로그인하십시오.

채택된 답변

Mathieu NOE
Mathieu NOE 2022년 10월 19일
편집: Mathieu NOE 2022년 11월 9일
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
Ancalagon8
Ancalagon8 2024년 4월 17일
@Mathieu NOE thank you!!
Mathieu NOE
Mathieu NOE 2024년 4월 17일
as always, my pleasure !!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Spreadsheets에 대해 자세히 알아보기

제품


릴리스

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by