여러 파일 가져오기여러분 모두에게,
내 문제는 매우 기본적이므로 이전에 제기되었을 수 있지만 정확한 문제에 대한 해결책을 찾을 수 없습니다.
동일한 구조의 여러 파일을 가져와서 동일한 방식으로 조작한 다음 일부 파일을 함께 붙이고 싶습니다. 다음과 같은 일반적인 방법으로 가져오기 및 데이터 조작 부분을 수행했습니다.
dt = Open(
"PATH/File1.xlsx",
Worksheets( "Table1" ),
XXX
);
// New operation e.g. New column: Column 2
dt << New Column( "Column 2",
Numeric,
"Continuous",
Format( "Best", 12 )
);<BR /><BR />File1 = dt;<BR />File1 << Set Name("File1");<BR />더 많은 파일을 가져오기 위해 동일한 코드를 스크립트에 복사하고 "File1"을 "File2", "File3" 등으로 교환합니다. 작동하지만 가져올 파일이 많기 때문에 스크립트 길이가 상당히 커집니다.
IMF 옵션도 시도했습니다. "여러 테이블 열기"를 선택했을 때(쌓기를 원하지 않음) 데이터 테이블이 이미 특정 이름에 연결되어 있고 위에서 설명한 일반 코드로 데이터 테이블을 조작할 수 없습니다.
보다 우아한 솔루션에 대한 아이디어가 있습니까?
정말 감사합니다!
데이터 테이블Re: 여러 파일 가져오기당신은 사용할 수 있습니다 함수() (jmp.com) 또는 expr(). 다음은 function()을 사용하는 몇 가지 옵션입니다.
Names Default To Here(1);
open_and_modify = function({file_path}, {Default Local},
dt = Open(file_path, Worksheets("Table1"), XXX);
// New operation e.g. New column: Column 2
dt << New Column("Column 2", Numeric, "Continuous", Format("Best", 12));
dt << Set Name("File1");
return(dt);
);
dt1 = open_and_modify("PATH/File1.xlsx");
dt2 = open_and_modify("PATH/File2.xlsx");
dt3 = open_and_modify("PATH/File3.xlsx");
//or have a list of paths
file_paths = {"PATH/File1.xlsx", "PATH/File2.xlsx", "PATH/File3.xlsx"};
//create first concatenate before
table_list = {};
For Each({new_file_path}, files,
Insert Into(table_list, open_and_modify(new_file_path));
);