여러 개의 XLSM 파일 병합하기
.NET용 Sheetize XLSM 병합기는 여러 XLSM 워크북을 하나의 파일로 결합하면서 모든 워크시트, 매크로, 차트 및 서식을 그대로 보존할 수 있는 간단하면서도 강력한 API를 제공합니다. 보고서를 통합하거나 데이터를 집계하거나 여러 소스에서 마스터 워크북을 만들 때 유용합니다.
주요 기능
여러 XLSM 파일 병합
임의 개수의 XLSM 워크북을 하나의 통합 워크북으로 결합합니다. 모든 매크로(VBA)가 그대로 유지되어 결과 파일에서도 정상적으로 동작합니다.
서식 및 개체 보존
셀 스타일, 수식, 테이블, 차트, 이미지, 삽입된 개체 등 모든 서식과 객체가 병합 과정에서 손상되지 않습니다.
스트리밍 지원
대용량 워크북을 스트리밍 방식으로 처리해 메모리 사용량을 최소화합니다. 다수 파일을 일괄 병합할 때 이상적입니다.
상세 안내
XLSM 병합 워크플로우
Sheetize로 여러 XLSM 파일을 병합하려면 다음 절차를 따르세요.
- 병합기 초기화:
SpreadsheetMerger인스턴스를 생성합니다. - 옵션 설정: 시트 이름 지정, 충돌 해결, 매크로 처리 방식을 제어하고 싶다면
SaveOptions를 설정합니다. - 파일 경로 정의: 원본 XLSM 파일 목록과 병합 결과 파일의 경로를 지정합니다.
- 병합 실행: 준비한 옵션을 넘겨
Process메서드를 호출합니다.
예시 – 세 개의 XLSM 파일을 하나의 워크북으로 병합
using Sheetize;
var loadOptions = new LoadOptions();
var saveOptions = new SaveOptions
{
OutputFile = "E:\\MergedReport.xlsm"
};
SpreadsheetMerger.Process(loadOptions, saveOptions, new string[]
{
"Quarter1_Report.xlsm",
"Quarter2_Report.xlsm",
"Quarter3_Report.xlsm"
});성공적인 병합을 위한 팁
- 매크로 참조 일관성: 원본 파일의 매크로가 동일한 모듈 이름을 중복 사용하지 않도록 합니다. 충돌이 발생하면 Sheetize가 자동으로 모듈명을 변경합니다.
- 시트 이름 충돌: 기본적으로 중복 시트 이름에는 “_1”, “_2” 등 접미사가 붙습니다.
MergerOptions를 통해 이 동작을 직접 지정할 수 있습니다. - 대용량 워크북: 수십 개 이상의 대용량 XLSM 파일을 병합할 경우
SpreadsheetMerger.StreamProcess를 활용해 메모리 사용량을 낮추세요.
확장된 형식 지원
- 동일한 병합기는 XLSX, CSV, TSV 파일도 처리할 수 있지만, 매크로 기능을 유지할 수 있는 입력은 XLSM 파일뿐입니다.
- 병합이 끝난 뒤에는 (XLSX 암호 설정 가이드를 참고) 비밀번호 보호를 적용해 통합 워크북을 안전하게 보관할 수 있습니다.
이러한 기능을 통해 Sheetize는 일시적인 보고서 작성부터 수천 개의 매크로가 포함된 워크북을 일일이 통합하는 프로덕션 환경까지, 다양한 시나리오에서 손쉽게 여러 XLSM 파일을 병합하도록 도와줍니다.