본문 바로가기
Office/Excel

[excel] 성적등급표. 다중 if, ifs 대신, vlookup을 사용하자

by 지혜를 탐구하는 오딘 2022. 5. 28.
728x90
반응형

 

 

성적표 등급 만들기 엑셀은 아주아주 자주 사용하는 것이다.

대부분이 IF 를 엄청나게 중첩하거나, IFS 를 사용한다.

 

좀 더 쉽고 좋은 방법이 있다. 하지만, (난이도는 올라간다.)

 

결과부터 보자!

 

IF 함수

IF(B2>=$H$2,$I$2,		# A
    IF(B2>=$H$3,$I$3,		# B
        IF(B2>=$H$4,$I$4,		# C
            IF(B2>=$H$5,$I$5,$I$6)		# D, F
        )
    )
)

(프로그래밍에서 들여쓰기 한 것처럼 넣어봤다.)

대충 봐도 엄청나게 길고, 알아보기가 힘들다.

 

장점: 처음 배우기 쉬움

단점: 갈수록 복잡함

 

IFS 함수

IFS(
    B2>=$H$2,$I$2,		# A
    B2>=$H$3,$I$3,		# B
    B2>=$H$4,$I$4,		# C
    B2>=$H$5,$I$5,		# D
    B2>=$H$6,$I$6		# F
)

IF 함수보다는 그나마 직관적이다. (SWITCH 문 같이 생겼다)

하지만 길어지면 길어질 수록, 등급이 많아질수록 복잡하고, 귀찮아진다.

 

장점: 어렵지 않은 난이도

단점: 길어지면 귀찮아짐

 

 

VLOOKUP, ROUNDDOWN

IFERROR(
    VLOOKUP(
        ROUNDDOWN(B2,-1),	# 1의 자리에서 버림한 값을 찾아라
        $H$2:$I$6,		# 테이블 영역
        2,0)		# 2번째 칼럼(열)에서
    , $I$6
)

일단 짧다.그리고 인간이 등급이 어느 셀에 있는지 찾을 필요가 없다.

하지만 VLOOKUP 이 무엇인지 모른다면, 어렵다.

(IFERROR 함수는 꼭 필요하진 않다. F를 처리하기 위해서 넣은 것이다.)

 

해석:

IFERROR(VLOOKUP(ROUNDDOWN(B2,-1),$H$2:$I$6,2,0), $I$6)

==> IFERROR(VLOOKUP(60,$H$2:$I$6,2,0), $I$6)

====> IFERROR("D", $I$6)

--> "D"

 

장점: 엄청 길어져도 귀찮지 않다. (에러가 없다.)

단점: 배우기 다소 어렵다.

 

 

 

결론:

그렇게 어렵진 않으니,

배워서 쉽게 쉽게 활용하자.

(퇴근시간이 2분 빨라졌다.)

 

 

728x90
반응형

댓글