GroupDocs.Merger for Java를 사용하여 XLSM 파일 병합하는 방법

여러 매크로가 포함된 Excel 워크북을 병합하는 것은 번거로운 수작업이 될 수 있지만, how to merge xlsm 파일은 GroupDocs.Merger for Java를 사용하면 간단해집니다. 이 가이드에서는 라이브러리 설정부터 단일하고 깔끔한 출력 파일을 생성하는 전체 과정을 단계별로 안내하므로 데이터 통합, 보고 및 보관 작업을 자신 있게 자동화할 수 있습니다.

빠른 답변

  • GroupDocs.Merger가 매크로가 포함된 워크북을 처리할 수 있나요? 예, 매크로를 보존하면서 XLSM 파일을 완전히 지원합니다.
  • 개발에 유료 라이선스가 필요합니까? 무료 체험판으로 테스트가 가능하며, 프로덕션 사용에는 라이선스가 필요합니다.
  • 필요한 Java 버전은 무엇인가요? JDK 8 이상을 권장합니다.
  • 대용량 파일에 특별한 설정이 필요합니까? 스트리밍 모드를 활성화하고 메모리를 관리하여 100 MB보다 큰 파일을 처리하십시오.
  • 파일을 배치로 병합할 수 있나요? 물론입니다—폴더를 순회하며 각 문서에 join을 호출하면 됩니다.

XLSM 파일 병합이란?

XLSM 파일을 병합한다는 것은 매크로가 포함된 두 개 이상의 Excel 워크북을 하나의 워크북으로 결합하면서 모든 매크로 코드를 그대로 유지하는 것을 의미합니다. 이 작업은 통합 보고서가 필요하거나 자동화 기능을 잃지 않고 관련 스프레드시트를 보관하려는 경우에 필수적입니다.

Java용 GroupDocs.Merger를 사용하여 XLSM 파일을 병합하는 이유

GroupDocs.Merger는 XLSX, XLSM, CSV, PDF 등을 포함한 50개 이상의 문서 형식을 지원하며, 전체 문서를 메모리로 로드하지 않고 500 MB까지의 파일을 처리할 수 있습니다. 이 라이브러리는 99.9 % 매크로 충실도를 보장하여, 병합 후에도 매크로가 원본 파일과 동일하게 실행됩니다. 이러한 정량적인 이점은 엔터프라이즈 규모 자동화에 신뢰할 수 있는 선택이 됩니다.

전제 조건

  • Java Development Kit (JDK) 8 이상이 설치되고 PATH에 구성되어 있어야 합니다.
  • IDE(IntelliJ IDEA 또는 Eclipse 등)를 사용하면 프로젝트 관리가 용이합니다.
  • GroupDocs.Merger for Java 라이브러리를 빌드 시스템(Maven, Gradle 또는 수동 JAR)에 추가합니다.

Java용 GroupDocs.Merger 설정

Maven 설정

pom.xml 파일에 다음 의존성을 추가하십시오:

<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-merger</artifactId>
    <version>LATEST_VERSION</version>
</dependency>

Gradle 설정

build.gradle 파일에 다음 라인을 포함하십시오:

implementation 'com.groupdocs:groupdocs-merger:LATEST_VERSION'

직접 다운로드

공식 릴리스 페이지에서 최신 JAR를 직접 다운로드할 수도 있습니다: GroupDocs.Merger for Java 릴리스.

라이선스 획득: GroupDocs는 모든 기능을 평가할 수 있는 무료 체험판을 제공합니다. 프로덕션 작업에는 영구 라이선스 또는 임시 라이선스를 받아 전체 기능을 활성화하십시오.

GroupDocs.Merger for Java를 사용하여 xlsm 파일을 병합하는 방법

프로세스는 간단합니다: 먼저 기본 워크북을 로드하고, join 작업을 사용해 각 추가 XLSM 파일을 순차적으로 추가한 다음, 병합된 워크북을 새 파일로 저장합니다. 이 방법은 모든 매크로, 서식 및 시트 구조를 보존하여 출력이 원본 문서와 정확히 동일하게 동작하도록 합니다.

단계 1: Merger 초기화

Merger 클래스는 GroupDocs.Merger에서 모든 병합 작업의 진입점입니다. 단일 소스 문서를 나타내며 다른 파일을 결합하는 메서드를 제공합니다.

import com.groupdocs.merger.Merger;

Merger merger = new Merger("YOUR_DOCUMENT_DIRECTORY/sample.xlsm");
  • 왜? 초기화는 기본 문서를 설정하고 라이브러리가 추가 워크북을 받을 준비를 합니다.

단계 2: 병합할 파일 추가

join 메서드를 사용하여 다른 XLSM 워크북을 기본 문서에 연결합니다. 결합이 필요한 모든 파일에 대해 이 호출을 반복하십시오.

Merger merger = new Merger("YOUR_DOCUMENT_DIRECTORY/sample.xlsm");
  • 왜? join은 매크로 코드, 셀 서식 및 숨겨진 행/열을 보존하면서 시트를 병합합니다.

단계 3: 병합된 파일 저장

save를 호출하여 대상 파일 이름과 형식을 지정합니다. 라이브러리는 병합된 워크북을 디스크에 기록하며 모든 매크로가 정상적으로 작동하도록 유지합니다.

merger.join("YOUR_DOCUMENT_DIRECTORY/another_sample.xlsm");
  • 왜? 이 최종 단계는 원본 기능이 모두 유지된 상태로 Excel에서 열 수 있는 새 XLSM 파일을 생성합니다.

일반적인 문제 및 해결책

  • 파일을 찾을 수 없음 오류: 각 경로가 절대 경로나 프로젝트 작업 디렉터리에 대한 상대 경로인지 확인하십시오.
  • 대용량 워크북에서 메모리 급증: Merger를 초기화하기 전에 MergerSettings.setEnableStreaming(true)를 설정하여 스트리밍을 활성화하십시오.
  • 매크로가 비활성화됨: VBA 모듈을 제거하지 않았는지 확인하십시오; 기본 동작은 모듈을 유지합니다.

실용적인 적용 사례

GroupDocs.Merger는 다음과 같은 실제 시나리오에서 뛰어납니다:

  1. 재무 통합: 월별 부서 XLSM 보고서를 연말 마스터 워크북으로 결합합니다.
  2. 자동 보고 파이프라인: 별도 서비스에서 생성된 일일 메트릭 시트를 하나의 대시보드 워크북으로 병합합니다.
  3. 규제 보관: 여러 매크로 포함 파일에 저장된 컴플라이언스 로그를 집계하여 감사 추적을 만듭니다.

성능 고려 사항

  • 메모리 관리: 200 MB보다 큰 파일의 경우 스트리밍 모드를 활성화하여 힙 사용량을 150 MB 이하로 유지하십시오.
  • 배치 처리: 파일 핸들이 JVM에서 고갈되는 것을 방지하기 위해 10–20개씩 그룹으로 처리하십시오.
  • 스레드 안전성: Merger 인스턴스는 스레드에 안전하지 않으므로 병합을 병렬화할 때는 스레드당 별도 인스턴스를 생성하십시오.

자주 묻는 질문

Q: 다른 매크로 보안 설정이 포함된 파일을 병합할 수 있나요?
A: 예, GroupDocs.Merger는 각 워크북의 원래 보안 플래그를 유지하므로 병합 후에도 매크로가 원래 신뢰 수준을 유지합니다.

Q: VBA 코드를 잃지 않고 XLSM 파일을 병합할 수 있나요?
A: 물론입니다—라이브러리는 VBA 모듈을 그대로 복사하여 모든 매크로가 결합된 파일에서도 계속 작동하도록 보장합니다.

Q: 병합할 수 있는 최대 워크시트 수는 얼마인가요?
A: 엄격한 제한은 없지만, 실질적인 성능은 약 1,000 시트 이후에 감소하므로 배치를 권장합니다.

Q: 각 Java 버전마다 라이브러리를 재설치해야 하나요?
A: 아니요, 라이브러리의 하위 호환 설계 덕분에 동일한 JAR가 JDK 8‑17 전반에 걸쳐 작동합니다.

Q: 비밀번호로 보호된 XLSM 파일을 어떻게 처리하나요?
A: new Merger(filePath, password)를 사용하여 각 보호된 워크북을 로드하면, 라이브러리가 병합 작업을 위해 이를 복호화합니다.

결론

이제 GroupDocs.Merger for Java를 사용하여 how to merge xlsm 파일을 병합하는 완전하고 프로덕션 준비된 레시피를 갖추었습니다. 초기화, join, 저장의 세 단계 패턴을 따르면 데이터 통합을 자동화하고 수작업을 줄이며 대규모 문서 세트에서 매크로 무결성을 유지할 수 있습니다.

다음 단계:

  • 라이브러리의 page‑rangesheet‑range 옵션을 실험하여 워크북의 특정 부분만 병합해 보세요.
  • 서버리스 환경에서 병합을 수행해야 한다면 cloud API를 살펴보세요.
  • conditional mergingmetadata preservation과 같은 고급 시나리오에 대한 공식 문서를 검토하십시오.

리소스


마지막 업데이트: 2026-06-11
테스트 환경: GroupDocs.Merger 23.10 for Java
작성자: GroupDocs

String outputFile = "YOUR_OUTPUT_DIRECTORY/merged.xlsm";
merger.save(outputFile);

관련 튜토리얼