스프레드시트 관리 작업
스프레드시트 관리 작업
Workbook 클래스는 Aspose.Cells FOSS for C++에서 모든 스프레드시트 작업의 진입점입니다. 새 워크북을 생성하고, 기존 XLSX 파일을 로드하며, 워크시트를 관리하고, 결과를 저장하는 메서드를 제공합니다.
새 워크북 만들기
빈 워크북을 만들려면 Workbook를 인스턴스화하십시오. 기본 워크시트가 자동으로 생성됩니다.
#include "aspose/cells_foss/Workbook.h"
#include "aspose/cells_foss/Worksheet.h"
using namespace Aspose::Cells_FOSS;
int main() {
Workbook workbook;
Worksheet& sheet = workbook.GetWorksheets()[0];
sheet.SetName("Summary");
workbook.Save("output.xlsx");
return 0;
}기존 워크북 로드
기존 XLSX 파일을 로드하려면 파일 경로를 Workbook 생성자에 전달하십시오. 로드가 완료되면 워크시트와 셀 데이터에 즉시 접근할 수 있습니다.
Workbook workbook("existing.xlsx");
Worksheet& sheet = workbook.GetWorksheets()[0];
// Access or modify cells here
workbook.Save("modified.xlsx");워크시트 속성 구성
Worksheet 클래스는 표시 및 보호 속성을 노출합니다. 이를 사용하여 시트 가시성, 그리드 표시, 확대/축소 및 탭 색상을 구성합니다.
Worksheet& sheet = workbook.GetWorksheets()[0];
sheet.SetName("Data");
sheet.SetShowGridlines(false);
sheet.SetShowRowColumnHeaders(true);
sheet.SetZoom(80);워크시트 보호 및 보호 해제
시트를 편집으로부터 잠그려면 Worksheet::Protect를 호출하고, 보호를 해제하려면 Worksheet::Unprotect를 호출합니다:
sheet.Protect("password");
// ... distribute the workbook ...
sheet.Unprotect("password");고유한 시트 및 정의된 이름 범위 보장
프로그램으로 여러 워크시트를 추가할 때, 이름 충돌을 방지하려면 Workbook::EnsureUniqueSheetName를 사용하십시오. 정의된 이름이 올바르게 범위 지정되었는지 검증하려면 Workbook::EnsureValidDefinedNameScope를 사용하십시오.
workbook.EnsureUniqueSheetName();
workbook.EnsureUniqueDefinedName();워크북 저장
워크북을 디스크에 기록하려면 Workbook::Save(fileName)를 호출하십시오. 여러 오버로드가 파일 이름, 스트림 또는 명시적 SaveFormat를 받아들입니다.
workbook.Save("products.xlsx");팁 및 모범 사례
- 워크북 사용을 마쳤을 때
Workbook::Dispose()를 항상 호출하여 관리되지 않는 리소스를 해제하세요. - 워크북 내에서 워크시트 이름은 고유해야 합니다 — 배치 추가 후
EnsureUniqueSheetName를 사용하세요. - 가독성을 높이기 위해 프레젠테이션 스타일 시트에
Worksheet::SetShowGridlines(false)를 설정하세요. - 워크시트 보기의 기본 확대/축소 수준(퍼센트)을 설정하려면
Worksheet::SetZoom(value)를 사용하세요. Worksheet::SetTabColor를 통해 지정된 탭 색상은 사용자가 워크시트를 시각적으로 구분하는 데 도움이 됩니다.
일반적인 문제
| 문제 | 원인 | 수정 |
|---|---|---|
| 로드 시 파일을 찾을 수 없음 | 잘못된 경로 | 절대 경로를 사용하거나 작업 디렉터리를 확인하십시오 |
| 시트 이름 충돌 | 시트를 추가할 때 중복된 이름 | 각 추가 후에 EnsureUniqueSheetName()를 호출하십시오 |
| Workbook 변경 사항이 저장되지 않음 | Save가 호출되지 않음 | 종료하기 전에 항상 workbook.Save(path)를 호출하십시오 |
| 메모리 누수 경고 | Dispose가 호출되지 않음 | 스코프 끝에서 workbook.Dispose()를 호출하십시오 |
API Reference 요약
| 클래스/메서드 | 설명 |
|---|---|
Workbook() | 새 빈 워크북을 생성합니다 |
Workbook(filePath) | 기존 XLSX 파일을 로드합니다 |
Workbook::Save(fileName) | 워크북을 디스크에 저장합니다 |
Workbook::EnsureUniqueSheetName() | 중복 시트 이름을 해결합니다 |
Workbook::Dispose() | 리소스를 해제합니다 |
Worksheet::SetName(name) | 워크시트 이름을 바꿉니다 |
Worksheet::SetShowGridlines(bool) | 그리드선 표시를 전환합니다 |
Worksheet::SetZoom(percent) | 기본 확대 비율을 설정합니다 |
Worksheet::Protect(password) | 워크시트를 잠급니다 |
Worksheet::Unprotect(password) | 워크시트의 잠금을 해제합니다 |