Excel 워크시트 복사 또는 이동

Excel 파일은 부서별 예산이나 연간 판매 보고서와 같은 복잡한 데이터를 관리하는 데 사용됩니다. 보고서를 만드는 데 사용할 기성 템플릿이 있는 상황이 있을 수 있습니다. 이를 위해 템플릿 워크시트의 복사본을 만들 수 있습니다. 데이터 흐름을 보여주기 위해 워크시트를 구성해야 할 수도 있습니다. 이러한 경우 요구 사항에 따라 워크시트를 재정렬할 수 있습니다. 이에 비추어 C++를 사용하여 프로그래밍 방식으로 워크시트를 복사하고 이동하는 방법을 배웁니다.

Excel 워크시트를 복사하거나 이동하는 C++ API

Aspose.Cells for C++는 Microsoft Excel을 설치하지 않고도 Excel 파일을 만들고 읽고 업데이트할 수 있는 네이티브 C++ 라이브러리입니다. API는 Excel 워크시트 복사 및 이동도 지원합니다. NuGet을 통해 API를 설치하거나 다운로드 섹션에서 직접 다운로드할 수 있습니다.

PM> Install-Package Aspose.Cells.Cpp

C++를 사용하여 Excel 통합 문서 내에서 워크시트 복사

다음은 Excel 통합 문서 내에서 워크시트를 복사하는 단계입니다.

다음은 C++를 사용하여 Excel 통합 문서 내에서 워크시트를 복사하는 샘플 코드입니다.

// 소스 디렉토리 경로.
StringPtr srcDir = new String("SourceDirectory\\");

// 출력 디렉토리 경로.
StringPtr outDir = new String("OutputDirectory\\");

// 엑셀 파일 불러오기
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// 워크시트 검색
intrusive_ptr<IWorksheetCollection> sheets = workbook->GetIWorksheets();

// 통합 문서 내의 기존 시트에서 새 시트로 데이터를 복사합니다.
sheets->AddCopy(new String("Sheet1"));

// 엑셀 파일 저장
workbook->Save(outDir->StringAppend(new String("Sample1_out.xlsx")));

한 통합 문서에서 다른 통합 문서로 워크시트 복사

Aspose.Cells for C++를 사용하면 두 Excel 파일 간에 워크시트를 복사할 수도 있습니다. 다음은 한 Excel 파일에서 다른 Excel 파일로 워크시트를 복사하는 단계입니다.

다음은 C++를 사용하여 한 Excel 통합 문서에서 다른 Excel 통합 문서로 워크시트를 복사하는 샘플 코드입니다.

// 소스 디렉토리 경로.
StringPtr srcDir = new String("SourceDirectory\\");

// 출력 디렉토리 경로.
StringPtr outDir = new String("OutputDirectory\\");

// 소스 Excel 파일 로드
intrusive_ptr<IWorkbook> sourceWorkbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// 대상 Excel 파일 로드
intrusive_ptr<IWorkbook> destinationWorkbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("book1.xlsx")));

// 원본 통합 문서의 워크시트 검색
intrusive_ptr<IWorksheetCollection> sheets = sourceWorkbook->GetIWorksheets();

// 복사하려는 워크시트 검색
intrusive_ptr<IWorksheet> worksheet = sheets->GetObjectByIndex(0);

// 이전에 검색한 워크시트를 새 통합 문서로 복사
destinationWorkbook->GetIWorksheets()->GetObjectByIndex(0)->Copy(worksheet);

// 엑셀 파일 저장
destinationWorkbook->Save(outDir->StringAppend(new String("book1_out.xlsx")));

C++를 사용하여 워크시트를 다른 위치로 이동

다음은 Excel 통합 문서 내에서 워크시트의 위치를 변경하는 단계입니다.

다음은 C++를 사용하여 동일한 통합 문서 내에서 워크시트를 다른 위치로 이동하는 샘플 코드입니다.

// 소스 디렉토리 경로.
StringPtr srcDir = new String("SourceDirectory\\");

// 출력 디렉토리 경로.
StringPtr outDir = new String("OutputDirectory\\");

// 엑셀 파일 불러오기
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// 워크시트 검색
intrusive_ptr<IWorksheetCollection> sheets = workbook->GetIWorksheets();

// 첫 번째 시트에 액세스
intrusive_ptr<IWorksheet> sheet = sheets->GetObjectByIndex(0);

// 첫 번째 시트를 통합 문서의 두 번째 위치로 이동합니다.
sheet->MoveTo(1);

// 엑셀 파일 저장
workbook->Save(outDir->StringAppend(new String("Sample1_out.xlsx")));

무료 라이선스 받기

무료 임시 라이선스를 요청하면 평가 제한 없이 API를 사용해 볼 수 있습니다.

결론

이 문서에서는 동일한 Excel 통합 문서 내에서 또는 다른 통합 문서 간에 워크시트를 복사하는 방법을 배웠습니다. 또한 Excel 파일 내에서 워크시트의 위치를 변경하는 방법을 살펴보았습니다. C++용 Aspose.Cells는 공식 문서를 방문하여 탐색할 수 있는 Excel 파일 작업을 위한 더 많은 기능을 제공합니다. 질문이 있는 경우 무료 지원 포럼을 통해 언제든지 문의하십시오.

또한보십시오