워크시트를 사용한 Web Components
Infragistics Web Components Excel 엔진worksheet이 바로 데이터가 보관되는 곳입니다. 워크시트의 행과 셀을 조작하고 해당 값을 설정하여 데이터를 입력할 수 있습니다. 아래에worksheet 표시된 것처럼 셀의 형식을 필터링, 정렬, 맞춤 설정할 수 있습니다.
Web Components Using Worksheets Example
다음 코드는 아래 코드 조각을 사용하는 데 필요한 가져오기를 보여줍니다.
import { Workbook } from "igniteui-webcomponents-excel";
import { Worksheet } from "igniteui-webcomponents-excel";
import { WorkbookFormat } from "igniteui-webcomponents-excel";
import { Color } from "igniteui-webcomponents-core";
import { CustomFilterCondition } from "igniteui-webcomponents-excel";
import { ExcelComparisonOperator } from "igniteui-webcomponents-excel";
import { FormatConditionTextOperator } from "igniteui-webcomponents-excel";
import { OrderedSortCondition } from "igniteui-webcomponents-excel";
import { RelativeIndex } from "igniteui-webcomponents-excel";
import { SortDirection } from "igniteui-webcomponents-excel";
import { WorkbookColorInfo } from "igniteui-webcomponents-excel";
Configuring the Gridlines
눈금선은 워크시트의 셀을 시각적으로 구분하는 데 사용됩니다. 눈금선을 표시하거나 숨길 수 있으며 색상도 변경할 수 있습니다.
워크시트의 속성을showGridlines 이용displayOptions 해 그리드라인을 표시하거나 숨길 수 있습니다. 다음 코드는 워크시트에서 격자선을 숨기는 방법을 보여줍니다:
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.worksheets().add("Sheet1");
worksheet.displayOptions.showGridlines = false;
워크시트의 특성 를gridlineColor 이용displayOptions 해 격자선 색상을 설정할 수 있습니다. 다음 코드는 워크시트 내 격자선을 빨간색으로 바꾸는 방법을 보여줍니다:
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.worksheets().add("Sheet1");
worksheet.displayOptions.gridlineColor = "Red";
Configuring the Headers
열과 행 머리글은 열과 행을 시각적으로 식별하는 데 사용됩니다. 또한 현재 선택된 셀이나 셀 영역을 시각적으로 강조하는 데에도 사용됩니다.
워크시트의 속성을showRowAndColumnHeaders 사용하여displayOptions 열과 행 헤더를 표시하거나 숨길 수 있습니다. 다음 코드는 행과 열의 헤더를 숨기는 방법을 보여줍니다:
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.worksheets().add("Sheet1");
worksheet.displayOptions.showRowAndColumnHeaders = false;
Configuring Editing of the Worksheet
기본적으로 저장한 객체는worksheet 편집 가능합니다. 객체의 방법으로 워크시트를 보호worksheet 함으로써 편집을protect 비활성화할 수 있습니다. 이 방법은 보호되는 부분을 결정하는 많은 공허 가능bool 인자를 가지고 있으며, 그 중 하나가 객체 편집을 허용하는 것인데, false로 설정하면 워크시트 편집을 막습니다.
다음 코드는 워크시트에서 편집을 비활성화하는 방법을 보여줍니다.
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.worksheets().add("Sheet1");
worksheet.protect();
객체의worksheet 방식을 사용protect 해 워크시트를 구조적 변화로부터 보호할 수도 있습니다.
보호가 설정되면 개별 셀, 행, 병합된 셀 영역 또는 열에 객체의cellFormat 속성을 설정locked 하여 워크시트 객체의 해당 객체에 대한 보호를 덮어쓸 수 있습니다. 예를 들어, 워크시트의 모든 셀을 읽기 전용으로 설정하고 한 열의 셀만 제외하면, 워크시트를 보호한 후 특정cellFormat 객체에 대해 객체의locked 속성을 false로 설정할WorksheetColumn 수 있습니다. 이렇게 하면 사용자는 해당 열의 셀을 편집할 수 있고, 워크시트 내 다른 셀 편집은 비활성화할 수 있습니다.
다음 코드는 이를 수행하는 방법을 보여줍니다.
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.worksheets().add("Sheet1");
worksheet.protect();
worksheet.columns(0).cellFormat.locked = false;
Filtering Worksheet Regions
필터링은 워크시트WorksheetFilterSettings에 필터 조건을 설정하여 객체의worksheet 속성에서 가져올filterSettings 수 있습니다. 필터 조건은 추가, 제거, 수정 또는 워크시트에서 메서드가 호출될 때reapplyFilters만 재적용됩니다. 지역 내 데이터가 변함에 따라 지속적으로 평가되지 않습니다.
필터를 적용할 영역은 객체에setRegion 적용할 메서드를 사용WorksheetFilterSettings 해 지정할 수 있습니다.
다음은 워크시트에 필터를 추가하는 데 사용할 수 있는 방법 및 설명 목록입니다.
| 방법 | 설명 |
|---|---|
applyAverageFilter |
데이터가 전체 데이터 범위의 평균보다 낮거나 높은지 여부에 따라 데이터를 필터링할 수 있는 필터를 나타냅니다. |
applyDatePeriodFilter |
월 또는 임의 분기의 날짜를 필터링할 수 있는 필터를 나타냅니다. |
applyFillFilter |
배경 채우기를 기준으로 셀을 필터링하는 필터를 나타냅니다. 이 필터는 단일 CellFill을 지정합니다. 이 채우기가 있는 셀은 데이터 범위에 표시됩니다. 다른 모든 셀은 숨겨집니다. |
ApplyFixedValuesFilter |
표시가 허용되는 특정 고정 값을 기반으로 셀을 필터링할 수 있는 필터를 나타냅니다. |
applyFontColorFilter |
글꼴 색상을 기준으로 셀을 필터링하는 필터를 나타냅니다. 이 필터는 단일 색상을 지정합니다. 이 색상 글꼴이 있는 셀은 데이터 범위에 표시됩니다. 다른 모든 셀은 숨겨집니다. |
applyIconFilter |
조건부 서식 아이콘을 기준으로 셀을 필터링할 수 있는 필터를 나타냅니다. |
applyRelativeDateRangeFilter |
필터가 적용된 시점을 기준으로 날짜를 기준으로 날짜 셀을 필터링할 수 있는 필터를 나타냅니다. |
applyTopOrBottomFilter |
정렬된 값의 위쪽 또는 아래쪽 셀을 필터링할 수 있는 필터를 나타냅니다. |
applyYearToDateFilter |
날짜가 현재 연도의 시작과 필터가 평가되는 시간 사이에 발생하는 경우 날짜 셀에서 필터링할 수 있는 필터를 나타냅니다. |
applyCustomFilter |
하나 또는 두 개의 사용자 정의 조건을 기반으로 데이터를 필터링할 수 있는 필터를 나타냅니다. 이러한 두 필터 조건은 논리적 "and" 또는 논리적 "or" 연산과 결합될 수 있습니다. |
워크시트 영역에 필터를 추가하는 예로 다음 코드 조각을 사용할 수 있습니다.
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.worksheets().add("Sheet1");
worksheet.filterSettings.setRegion("Sheet1!A1:A10");
worksheet.filterSettings.applyAverageFilter(0, AverageFilterType.AboveAverage);
Freezing and Splitting Panes
창 고정 기능을 사용하면 워크시트 상단의 행이나 왼쪽 열을 고정할 수 있습니다. 고정된 행과 열은 사용자가 스크롤하는 동안 항상 표시됩니다. 고정된 행과 열은 제거할 수 없는 단일 실선으로 워크시트의 나머지 부분과 구분됩니다.
창 고정을 활성화하려면 다음 설정을 해야 합니다panesAreFrozenworksheet 객체의displayOptions 받는 사람 참. 그 다음에는 다음 기능을 사용하여 고정할 행이나 열을 지정할 수 있습니다.FrozenRows 그리고FrozenColumns 디스플레이 옵션의 속성frozenPaneSettings 각각 ,
또한 하단 창의 첫 번째 행이나 오른쪽 창의 첫 번째 열을 각각 속성FirstRowInBottomPane으로FirstColumnInRightPane 지정할 수 있습니다.
다음 코드 조각은 워크시트에서 고정 창 기능을 사용하는 방법을 보여줍니다.
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.worksheets().add("Sheet1");
worksheet.displayOptions.panesAreFrozen = true;
worksheet.displayOptions.frozenPaneSettings.frozenRows = 3;
worksheet.displayOptions.frozenPaneSettings.frozenColumns = 1;
worksheet.displayOptions.frozenPaneSettings.firstColumnInRightPane = 2;
worksheet.displayOptions.frozenPaneSettings.firstRowInBottomPane = 6;
Setting the Worksheet Zoom Level
각 워크시트의 확대 레벨을 독립적으로 변경할 수 있습니다.MagnificationInNormalView 재산에 관한worksheet 객체의displayOptions. 이 특성은 10에서 400 사이의 값을 가지며, 적용하려는 줌의 비율을 나타냅니다.
다음 코드는 이를 수행하는 방법을 보여줍니다.
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.worksheets().add("Sheet1");
worksheet.displayOptions.magnificationInNormalView = 300;
Worksheet Level Sorting
정렬은 열이나 행의 워크시트 수준 개체에 정렬 조건을 설정하여 수행됩니다. 열이나 행을 오름차순이나 내림차순으로 정렬할 수 있습니다.
이는 시트의 속성을 이용worksheet 해 가져올 수 있는 객체의WorksheetSortSettingssortSettings 영역과 정렬 유형을 지정함으로써 이루어집니다.
시트 내 정렬 조건은 정렬 조건이 추가, 제거, 수정되었거나reapplySortConditions 워크시트에서 메서드가 호출될 때만 다시 적용됩니다. 열이나 행은 영역 내에서 정렬됩니다. "행"은 기본 정렬 유형입니다.
다음 코드 조각은 워크시트의 셀 영역에 정렬을 적용하는 방법을 보여줍니다.
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.worksheets().add("Sheet1");
worksheet.sortSettings.sortConditions().addItem(new RelativeIndex(0), new OrderedSortCondition(SortDirection.Ascending));
Worksheet Protection
객체에 메서드protect를worksheet 호출하면 워크시트를 보호할 수 있습니다. 이 방법은 다음과 같은 사용자 작업을 제한하거나 허용할 수 있는 많은 공제 가능한bool 매개변수를 노출합니다:
- 셀 편집.
- 도형, 메모, 차트 또는 기타 컨트롤과 같은 개체 편집.
- 시나리오 편집.
- 데이터 필터링.
- 셀 서식 지정.
- 열 삽입, 삭제 및 서식 지정
- 행 삽입, 삭제 및 서식 지정
- 하이퍼링크 삽입.
- 데이터 정렬.
- 피벗 테이블의 활용.
객체에 메서드unprotect를worksheet 호출하면 워크시트 보호를 해제할 수 있습니다.
다음 코드 조각은 위에 나열된 모든 사용자 작업을 보호하는 방법을 보여줍니다.
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.worksheets().add("Sheet1");
worksheet.protect();
Worksheet Conditional Formatting
객체의worksheet 조건부 서식은 해당 워크시트 컬렉션에conditionalFormats 공개된 여러 "추가" 메서드를 사용해 구성할 수 있습니다. 이 "추가" 방법의 첫 번째 매개변수는 조건부 형식을 적용하고자 하는 워크시트 영역입니다string.
워크시트에 추가할 수 있는 많은 조건부 형식은 조건이 맞을 때 요소들이cellFormat 어떻게 보여야 하는지 결정하는 속성을 가지고WorksheetCell 있습니다. 예를 들어, 이cellFormat 속성에 붙은 속성들(예:fill와font)을 사용해 특정 조건부 형식 하에서 셀의 배경과 글꼴 설정을 각각 결정할 수 있습니다.
몇몇 조건부 형식은 속성이 없cellFormat 는데, 워크시트 셀에서의 시각화가 다르게 동작하기 때문입니다. 이 조건부 형식은 다음과 같습니다.DataBarConditionalFormatColorScaleConditionalFormatIconSetConditionalFormat
엑셀에서 기존workbook 파일을 불러올 때, 그 포맷은 로드될 때workbook 보존됩니다. 출력 파일을 엑셀 파일로 저장할workbook 때도 마찬가지입니다.
다음 코드 예제에서는 워크시트에서 조건부 서식을 사용하는 방법을 보여줍니다.
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.worksheets().add("Sheet1");
var color = new Color();
color.colorString = "Red";
var format = worksheet.conditionalFormats().addAverageCondition("A1:A10", FormatConditionAboveBelow.AboveAverage);
format.cellFormat.font.colorInfo = new WorkbookColorInfo(color);