OFFSET 함수는 기준 위치(셀/범위)에서 지정한 행과 열만큼 이동한 후, 설정한 너비와 높이만큼의 범위를 반환하는 함수입니다. 범위를 반환하기 때문에 SUM, AVERAGE 등 계산 함수와 함께 사용되는 경우가 많습니다.
이번 글에서는 OFFSET 함수의 구문을 해석해보고, 실제 엑셀에서 어떻게 OFFSET 함수가 셀 값을 출력하는지 소개해 드리겠습니다.
OFFSET 함수 구문 해석하기
OFFSET(시작 위치, 이동할 행 수, 이동할 열 수, 반환할 범위의 행 개수, 반환할 범위의 열 개수)
- 기준 위치: 셀 혹은 범위
- 이동할 행 수: 시작 위치에서 아래로 이동할 칸 수
(예시: -1이면 위로 한 칸, 0이면 그대로, 1이면 아래로 한 칸 이동)
- 이동할 열 수: 시작 위치에서 오른쪽으로 이동할 칸 수
(예시: -1이면 왼쪽으로 한 칸, 0이면 그대로, 1이면 오른쪽으로 한 칸 이동)
- 반환할 범위의 높이: 이동 후 위치를 기준으로 반환할 범위의 행 개수 (아래 방향)
→ 0은 될 수 없으며, 양수일 시 아래 방향으로, 음수 일시 윗 방향으로 반환할 범위의 행 개수를 결정. 생략 시 기준 위치와 동일한 행 개수
- 반환할 범위의 너비: 이동 후 위치를 기준으로 반환할 범위의 열 개수 (오른쪽 방향)
→ 0은 될 수 없으며, 양수일 시 오른쪽 방향으로, 음수 일시 왼쪽으로 반환할 범위의 열 개수를 결정. 생략 시 기준 위치와 동일한 열 개수
글만으로는 OFFSET 함수가 어떻게 작동하는지 감을 잡기 어려울 수 있습니다.
그래서 아래의 사진처럼 1~9까지 채워진 3x3 표로 설명드리겠습니다.
OFFSET 함수로 셀 값 출력해보기
위의 사진 속 수식 OFFSET(B3, 1, 1, 1, 1)의 반환 값은 5입니다.
위의 사진에서 수식 OFFSET(B3, 1, 1, 1, 1)은
- 시작점 '1(B3)'에서
- 아래 방향으로 1칸 이동하고,
- 오른쪽으로 1칸 이동하기 합니다.
- 이동 후 위치 C4셀을 기준으로 1행, 1열 크기의 범위를 반환합니다. (1행 1열짜리 범위는 셀입니다)
그렇다면 1(B3셀)에서 시작해서, 7(B5셀)을 출력하기 위해서는 어떻게 OFFSET 함수를 사용하면 될까요?
7을 출력하기 위해서는 아래로 두 칸 이동 후 1행 1열짜리 범위를 반환해야 합니다.
따라서, OFFSET(B3, 2, 0, 1, 1)로 수식을 짜야합니다.
한편, 3(D3셀)을 출력하기 위해서는 오른쪽으로 두 칸 이동 후 1행 1열짜리 범위를 반환해야 합니다.
따라서, 정답은 OFFSET(B3, 0, 2, 1, 1)입니다.
이번 글에서는 OFFSET 함수의 개념과 셀 값을 출력하는 방법에 대해서 소개해드렸는데요.
OFFSET 함수 구문에서 알 수 있듯이, OFFSET 함수는 셀뿐만 아니라 범위도 반환할 수 있습니다.
다만, 범위를 시트에 반환하기 위해서는 배열수식*의 개념을 알아야 합니다.
*오피스365에서는 배열수식을 별도로 설정하지 않고 바로 사용할 수 있습니다
대신 SUM이나 AVERAGE처럼 계산함수와 결합하면 연 누적 실적/평균 실적을 계산하는 등 유용하게 활용할 수 있습니다.
다음 글에서는 OFFSET으로 범위를 반환하는 경우에 대해서 설명드리겠습니다.
관련 글
[회사에서 많이 쓰이는 엑셀 함수] IF 함수 소개 및 사용법 #1
[회사에서 많이 쓰이는 엑셀 함수]#2 IF함수 AND/OR조건 사용법
'엑셀, VBA, 파워쿼리 > 엑셀 스프레드시트' 카테고리의 다른 글
[엑셀 팁] '선택하여 붙여넣기'로 여러셀 숫자 단위 한번에 바꾸기 (1) | 2022.10.22 |
---|---|
[엑셀 함수] OFFSET 함수로 범위 반환하기 (0) | 2022.10.09 |
[회사에서 많이 쓰이는 엑셀 함수]#3 IF함수 중첩 (vs VLOOKUP) (0) | 2022.09.24 |
[엑셀 함수] HLOOKUP 함수 사용 방법 (0) | 2022.09.17 |
[회사에서 많이 쓰이는 엑셀 함수]#2 IF함수 AND/OR조건 사용법 (AND/OR 함수, 곱셈 혹은 덧셈) (0) | 2022.09.02 |
댓글