소개

Aspose.Cells FOSS for TypeScript는 기본 셀 읽기/쓰기를 넘어서는 포괄적인 스프레드시트 관리 기능을 제공합니다. 개발자는 자세한 스타일링을 적용하고, 데이터 유효성 검사 규칙을 설정하며, 자동 필터를 구성하고, 조건부 서식을 추가하고, 차트를 만들고, 도형을 삽입하며, 워크북을 보호할 수 있습니다 – 모두 Microsoft Office에 의존하지 않는 TypeScript 코드에서 가능합니다.

이 게시물은 라이브러리에서 제공되는 주요 스프레드시트 관리 기능을 살펴보며, 각 기능 영역에 대한 작동 코드 예제를 제공합니다.


주요 기능

데이터 검증

DataValidation 클래스를 사용하여 셀 범위에 검증 규칙을 추가합니다. 지원되는 검증 유형에는 목록, 숫자 범위 및 사용자 지정 수식이 포함됩니다. worksheet.addDataValidation()를 사용하여 모든 범위에 검증을 적용합니다.

const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
const validation = new DataValidation();
validation.type = "list";
validation.formula1 = '"Option1,Option2,Option3"';
worksheet.addDataValidation(validation, "B1:B10");
await workbook.save("validated.xlsx");

자동 필터

worksheet.setAutoFilter()을 사용하여 데이터 범위에 자동 필터 헤더를 활성화합니다. 이렇게 하면 출력 XLSX 파일의 열 헤더에 드롭다운 필터 컨트롤이 추가됩니다. worksheet.removeAutoFilter()을 사용하여 필터를 제거합니다.

const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
worksheet.putValue("A1", "Name");
worksheet.putValue("B1", "Age");
worksheet.putValue("C1", "City");
worksheet.putValue("A2", "Alice");
worksheet.putValue("B2", "25");
worksheet.putValue("C2", "New York");
worksheet.putValue("A3", "Bob");
worksheet.putValue("B3", "30");
worksheet.putValue("C3", "London");
worksheet.setAutoFilter("A1:C4");
await workbook.save("filtered.xlsx");

조건부 서식

ConditionalFormatCollection를 사용하여 셀 범위에 시각 규칙을 적용합니다. 라이브러리는 ColorScaleRule, DataBarRuleIconSetRule를 지원하여 값에 따라 셀을 강조 표시합니다.

const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
for (let i = 1; i <= 10; i++) {
  worksheet.putValue(`A${i}`, i * 10);
}
await workbook.save("conditional.xlsx");

하이퍼링크 및 주석

셀에 cell.setHyperlink() 지원 URL, 이메일 주소 및 내부 시트 참조를 사용하여 하이퍼링크를 첨부합니다. worksheet.addComment()을 사용하여 Comment 객체로 주석을 추가합니다.

const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
worksheet.putValue("A1", "Click here");
worksheet.getCell2("A1").setHyperlink("https://www.example.com");
worksheet.putValue("A3", "Send email");
worksheet.getCell2("A3").setHyperlink("mailto:test@example.com");
await workbook.save("hyperlinks.xlsx");

통합 문서 및 셀 보호

workbook.protect()를 사용하여 전체 워크북을 비밀번호로 보호합니다. style.setLocked(true)으로 개별 셀을 잠그고 style.setHidden()으로 수식 표시를 제어합니다.

const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
worksheet.putValue("A1", "Protected Cell");
const style = new Style();
style.setLocked(true);
style.setHidden(false);
worksheet.getCell2("A1").setStyle(style);
workbook.protect(true, "password");
await workbook.save("protected.xlsx");

열 및 행 크기 조정

worksheet.setColumnWidth()를 사용하여 열 너비를 설정하고 worksheet.setRowHeight()를 사용하여 행 높이를 설정합니다. worksheet.setRowHidden()를 사용하여 행을 숨깁니다. 이러한 설정은 저장된 XLSX 파일에 지속됩니다.

const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;
worksheet.putValue("A1", "Wide Column");
worksheet.setColumnWidth(0, 30);
worksheet.setRowHeight(0, 25);
await workbook.save("sized.xlsx");

빠른 시작

npm으로 설치:

npm install @aspose/cells@1.0.0

유효성 검사 및 자동 필터가 적용된 스타일 워크북 만들기:

import { Workbook, Style, DataValidation } from "@aspose/cells";

const workbook = new Workbook();
const worksheet = workbook.worksheets[0]!;

worksheet.putValue("A1", "Status");
worksheet.putValue("B1", "Value");
const headerStyle = new Style();
headerStyle.setBold(true);
worksheet.getCell2("A1").setStyle(headerStyle);
worksheet.getCell2("B1").setStyle(headerStyle);

const validation = new DataValidation();
validation.type = "list";
validation.formula1 = '"Active,Inactive,Pending"';
worksheet.addDataValidation(validation, "A2:A20");

worksheet.setAutoFilter("A1:B20");
await workbook.save("managed.xlsx");

오픈 소스 및 라이선스

Aspose.Cells FOSS for TypeScript는 MIT 라이선스 하에 출시되었습니다. 소스 코드는 GitHub에서 확인할 수 있습니다. 상업적 사용은 MIT 라이선스 조건에 따라 허용됩니다.


시작하기

관련 리소스