Fusion 셀 참조, 조건과 입력 컨트롤
셀 범위에서 값을 찾고 조건에 따라 결과를 선택하며 드롭다운과 날짜 선택기를 구성할 수 있습니다. Foundry 데이터셋의 조회는 lookup 함수와 구분합니다.
범위의 위치로 값 가져오기
index(range: range, row_offset: number, column_offset: number): any
범위 안에서 지정한 행과 열의 셀 내용을 반환합니다. index(A1:C6, 2, 3)은 해당 범위의 두 번째 행, 세 번째 열을 가져옵니다.
- row_offset이 0이면 column_offset에 해당하는 열 전체를 선택합니다.
- column_offset이 0이면 row_offset에 해당하는 행 전체를 선택합니다.
- 둘 다 0이면 범위 전체를 선택합니다.
행 또는 열의 값으로 찾기
hlookup(value: any, range: range, row: number): any
vlookup(value: any, range: range, column: number): any
hlookup은 범위의 첫 행에서 value를 찾고 같은 열의 row번째 값을 가져옵니다. row는 1부터 시작합니다. A열에 색상 목록이 있는 예시에서 hlookup(A1, A1:A100, 5)는 다섯 번째 행의 색상을 가져옵니다.
vlookup은 범위의 첫 열에서 value를 찾고 같은 행의 column번째 값을 가져옵니다. column도 1부터 시작합니다. A열이 과일 이름, C열이 가격인 예시에서 vlookup(A3, A1:C6, 3)은 A3의 과일과 일치하는 행의 세 번째 열 가격입니다.
범위에서 위치 찾기
match(item: any, range: range, criteria: number): same_as_first_argument
일치하는 항목의 범위 내 위치를 1부터 시작하는 값으로 반환합니다.
| criteria | 일치 기준 | 범위 정렬 조건 |
|---|---|---|
| 1 | item 이하인 가장 큰 값 | 오름차순 |
| 0 | item과 정확히 같은 첫 값 | 정렬 불필요 |
| -1 | item 이상인 가장 작은 값 | 내림차순 |
A1:A3가 5, 25, 38이면 match(25, A1:A3, 0)은 2입니다.
조건과 오류 표시
if(condition: boolean, value_if_true: any, value_if_false: any): any
iferror(value: any, value_if_error: any): any
if는 조건이 true이면 value_if_true, false이면 value_if_false를 사용합니다. if(A1 >= 5, 'True', 'False')는 A1이 6이면 문자열 True, 4이면 문자열 False를 반환합니다. 이 문자열들은 Boolean 값과 구분합니다.
iferror는 오류가 없으면 value를 사용하고, 오류가 있으면 value_if_error로 지정한 내용을 오류 안내에 사용합니다. 예를 들어 B2가 비어 있어 나눗셈을 계산할 수 없을 때 안내를 표시하도록 다음과 같이 구성합니다.
=iferror(A1/B2, 'Enter a value in B2.')
Null과 빈 셀
isNull(value: any): boolean
coalesce([arg: any, ...]): any
empty_cell(): any
isNull은 null 또는 빈 셀이면 true, 그 외에는 false입니다. 숫자와 null이 섞인 A열에서 isNull(A1)을 아래로 채워 각 셀을 검사할 수 있습니다.
coalesce는 null이 아닌 첫 값을 반환하며 모든 입력이 null이면 null입니다. 이름과 null이 섞인 범위를 입력하면 첫 이름을 고르는 데 사용할 수 있습니다.
empty_cell은 빈 결과를 반환합니다. if 또는 iferror와 조합하여 값이 없을 때 빈 셀을 표시할 수 있습니다.
=if(NOT isNull(A1), A1, empty_cell())
Checkbox
checkbox([checked: boolean], [label: string]): boolean
체크박스를 표시하며 선택하면 true, 아니면 false를 반환합니다. checked를 생략하면 선택되지 않은 false 상태입니다. label은 선택적인 표시 문자열입니다.
Datepicker
datepicker([selectedDateTime: date_time], [timePrecision: string]): date_time
선택한 날짜를 가진 날짜 선택기를 표시합니다. 날짜 형식은 yyyy-MM-dd이며 HH:mm:ss를 추가할 수 있습니다. timePrecision은 NONE, MINUTE 또는 SECOND입니다.
Dropdown
dropdown(values: array, [selected_value: string], [allow_invalid: boolean], [placeholder_text: string]): any
values의 각 값은 문자열 레이블로 표시되므로 고유해야 합니다.
=dropdown(array('red', 'blue', 'green'))
selected_value는 기본 선택 레이블입니다. 생략하거나 null이면 선택하지 않은 상태입니다. 선택한 레이블이 데이터 변경 등으로 목록에서 사라지면 결과는 빈 셀이 됩니다.
allow_invalid가 true이면 이전 선택을 계속 반환합니다. 이 모드의 결과는 문자열이므로 문자열 선택지의 이전 선택을 유지하는 경우에 권장합니다. placeholder_text는 선택이 없을 때 보여 줄 안내입니다.
선택을 저장하기 전에 액션을 실행해야 한다면 action.dropdown을 사용합니다.
Multidropdown
multidropdown(values: array, [selected_value: array], [allow_invalid: boolean], [placeholder_text: string]): any
한 번에 여러 값을 선택할 수 있습니다. values의 원소는 문자열 레이블로 표시되며 고유해야 합니다. selected_value는 기본 선택 배열이고 생략하거나 null이면 선택하지 않은 상태입니다.
선택 레이블이 현재 values에 없으면 빈 셀이 됩니다. allow_invalid를 true로 하면 이전 선택을 유지하지만 이 모드는 현재 문자열 결과만 지원하므로 문자열 선택지를 보존할 때 사용합니다. placeholder_text는 선택이 없는 상태의 안내입니다.
셀 색과 툴팁
color(cell_value: any, [text_color: string], [background_color: string]): any
tooltip(cell_value: any, tooltip_content: string, [open_delay: number]): any
color는 셀 값에 글자색과 배경색을 적용합니다. tooltip은 마우스를 올리면 tooltip_content를 표시합니다. 내용에 Markdown을 사용할 수 있으며 open_delay로 툴팁이 나타나기까지의 지연을 조정할 수 있습니다.
링크
url(url: string, [label: string]): any
URL에 선택적인 표시 레이블을 붙인 하이퍼링크를 만듭니다. 예를 들어 url('https://example.com', 'My Blog')는 My Blog로 표시한 설명용 링크입니다. 질의 문자열 구성과 인코딩은 URL 함수를 사용합니다.