GRID FEATURE · PRO

수식 계산

수식은 =로 시작하는 문자열을 계산해 셀에 결과를 표시합니다. 예를 들어 =SUM(A1:A3)은 원본 열 정의의 첫 번째 열과 원본 데이터의 첫 세 행을 참조합니다.

동작 원리와 선택 기준

A1 좌표는 정렬 후 화면 순서가 아닙니다. 사용자가 표를 정렬하거나 열을 이동하더라도 원본 데이터 순서와 columnDefs 순서를 기준으로 수식을 해석한다는 점을 구분하세요.

이 기능을 제품에서 사용하려면 Pro 패키지와 유효한 라이선스가 필요합니다. 설정 이름이 같더라도 Community에서 Pro 기능이 활성화되는 것은 아닙니다.

코드의 grid는 설치와 연결 장에서 준비한 Grid 요소입니다. 예제마다 필요한 데이터·설정을 확인하고, 코드에서 소개하는 앱 함수와 서버 주소는 프로젝트에 맞게 구현하세요.

예제 1. 단가와 수량으로 금액 계산

수식 위치를 이해하기 쉬운 세 개의 열로 시작합니다.

javascript
grid.columnDefs = [
  { field: 'quantity', headerName: '수량', editable: true, editor: 'number' },
  { field: 'price', headerName: '단가', editable: true, editor: 'number' },
  { field: 'amount', headerName: '금액' },
];
grid.rowData = [{ id: 'a', quantity: 3, price: 100, amount: '=A1*B1' }];
grid.formulas = true;

결과 확인: 금액에 300이 보입니다. 수량을 수정하면 의존하는 금액이 다시 계산됩니다.

예제 2. 결과와 수식 원문 비교

계산이 예상과 다를 때 수식 원문과 편집 바를 표시합니다.

javascript
grid.showFormulas = true;
grid.formulaBar = true;

결과 확인: 수식 셀에 =A1*B1이 보입니다. 검토가 끝나면 showFormulas를 false로 돌려 결과를 표시합니다.

예제 3. 여러 시트와 동적 배열 검토

여러 Grid를 워크북으로 연결한 경우 getWorkbookPropagationState()와 getWorkbookSnapshotReport()로 연결 및 전파 상태를 확인합니다. 동적 배열은 applySpillFormula()의 전용 입력 계약과 충돌 결과를 확인한 뒤 사용합니다.

결과 확인: 배열 결과가 차지할 영역에 기존 값이 있으면 전체 결과를 억지로 덮어쓰지 않습니다. 거절·충돌·그려지지 않은 셀 보고서를 구분해 사용자에게 안내합니다.

조합할 때와 문제를 해결할 때

수식 문자열과 계산 결과는 별개입니다. 저장·복사·파일 출력 시 어느 쪽이 필요한지 먼저 정하고 결과를 확인하세요.

모든 Excel 함수가 지원된다고 가정하지 마세요. 함수명과 오류 결과를 실제 사용하는 수식으로 확인하고 순환 참조를 피합니다.

함께 읽기