[엑셀 함수] OFFSET 함수의 개념 이해하기
엑셀, VBA, 파워쿼리/엑셀 스프레드시트

[엑셀 함수] OFFSET 함수의 개념 이해하기

by Jongg 2022. 10. 5.
728x90

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으로 범위를 반환하는 경우에 대해서 설명드리겠습니다.  

 

관련 글

[엑셀 함수] OFFSET 함수로 범위 반환하기

[회사에서 많이 쓰이는 엑셀 함수] IF 함수 소개 및 사용법 #1

VLOOKUP 함수의 여러 사용법과 용도 #1

VLOOKUP 함수의 여러 사용법과 용도 #2

[회사에서 많이 쓰이는 엑셀 함수]#2 IF함수 AND/OR조건 사용법 

 

728x90

댓글