핵심 요약
- 아직 값을 넣지 않은 행에서 수식이
0이나#DIV/0!를 내보이지 않고 빈칸으로 있게 합니다. - 쓰는 조합은
=IF(C2="","",C2/B2)입니다. ISBLANK를 쓰는 방법과 결과가 달라지는 경우, 계산은 두고 0만 안 보이게 하는 방법도 함께 봅니다. - 빈칸("")으로 둔 행은 평균에서 빠지고, 0으로 둔 행은 평균에 들어갑니다. 예제에서 평균 달성률이 40%와 50%로 갈립니다.
수식을 미리 아래로 채워 둔 표는 편하지만, 값을 아직 적지 않은 행마다 0이 찍히거나 #DIV/0! 같은 오류가 줄지어 나옵니다. 영업 실적표에서 이번 주 실적을 아직 입력하지 않은 사람의 달성률이 0%로 보이면, 실제로 한 건도 못 한 사람과 구분되지 않습니다. 이 0이 평균에까지 들어가면 팀 평균도 낮아집니다.
시험 문제에서도 "값이 없으면 공백으로 표시하라"는 조건이 자주 붙습니다. 이 글은 "목적별 함수 조합" 시리즈의 한 편으로, 빈칸이면 계산하지 않게 하는 IF 수식과, 계산 결과는 그대로 두고 0만 화면에서 숨기는 방법을 목적에 따라 나눠 설명합니다.
예제 표 — 입력이 덜 된 실적표
A열 이름, B열 이번 달 목표 건수, C열 실적 건수가 있습니다. 최수아 님은 실적을 아직 입력하지 않았고, 7~9행은 새 사람이 들어올 때를 위해 비워 둔 행입니다. 박지훈 님은 실적이 정말 0건입니다. 이름과 숫자는 모두 가상입니다.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | 이름 | 목표(건) | 실적(건) | 달성률 | 남은 건수 |
| 2 | 김민준 | 10 | 7 | ||
| 3 | 이서연 | 5 | 4 | ||
| 4 | 박지훈 | 12 | 0 | ||
| 5 | 최수아 | 10 | |||
| 6 | 정우진 | 6 | 3 | ||
| 7 | |||||
| 8 | |||||
| 9 |
먼저 아무 처리 없이 D2에 =C2/B2, E2에 =B2-C2를 넣고 9행까지 채우면 이렇게 나옵니다(D열은 백분율 서식).
| A | D (=C/B) | E (=B-C) | |
|---|---|---|---|
| 4 | 박지훈 | 0% | 12 |
| 5 | 최수아 | 0% | 10 |
| 7~9 | (빈 행) | #DIV/0! | 0 |
실적을 아직 안 적은 최수아 님이 실적 0건인 박지훈 님과 똑같이 0%로 보입니다. 빈 칸은 계산에서 0으로 취급되기 때문입니다. 빈 행은 0으로 나누게 되어 #DIV/0! 오류가 납니다.
완성 수식 — 실적이 비었으면 계산하지 않기
D2: =IF(C2="","",C2/B2)
E2: =IF(C2="","",B2-C2)
- D2에 첫 번째 수식, E2에 두 번째 수식을 입력합니다.
- D2:E2를 함께 선택하고 채우기 핸들을 9행까지 끌어내립니다.
- D열을 선택하고 홈 탭에서 백분율 스타일(%)을 누릅니다.
| A | B | C | D (달성률) | E (남은 건수) | |
|---|---|---|---|---|---|
| 2 | 김민준 | 10 | 7 | 70% | 3 |
| 3 | 이서연 | 5 | 4 | 80% | 1 |
| 4 | 박지훈 | 12 | 0 | 0% | 12 |
| 5 | 최수아 | 10 | (빈칸) | (빈칸) | |
| 6 | 정우진 | 6 | 3 | 50% | 3 |
| 7~9 | (빈칸) | (빈칸) |
이제 박지훈 님의 진짜 0%와 최수아 님의 "아직 입력 안 함"이 구분됩니다. 최수아 님이 실적을 적는 순간 D5·E5가 바로 계산됩니다.
수식 풀어 보기 — 안쪽부터 한 겹씩
5행 최수아 님과 2행 김민준 님을 나란히 놓고 D열 수식을 따라가 보겠습니다.
C5=""→ C5가 비어 있는지 묻는 비교입니다. 큰따옴표 두 개를 붙여 쓴""는 "아무 글자도 없는 값"을 뜻합니다. C5는 비어 있으므로TRUE, 김민준 님의 C2는 7이므로FALSE입니다.IF(TRUE,"",…)→ 조건이 참이면 두 번째 인수""를 돌려줍니다. 셀에는 아무것도 보이지 않습니다. 이때 세 번째 인수C5/B5는 결과로 쓰이지 않습니다.IF(FALSE,"",C2/B2)→ 조건이 거짓이면 세 번째 인수를 계산합니다. 7÷10 =0.7, 백분율 서식으로 70%입니다.
Microsoft 문서도 입력이 없는데 수식이 결과를 표시하지 않게 하려고 셀이 비었는지 확인한다고 설명하며, =IF(D3="","",수식) 형태를 예로 듭니다.
조건 칸이 두 개일 때
목표(B)와 실적(C) 가운데 하나라도 비었으면 계산하지 않으려면 OR로 묶습니다. 이렇게 하면 목표를 안 적은 행에서 #DIV/0!가 나는 것까지 막을 수 있습니다.
=IF(OR(B2="",C2=""),"",C2/B2)
예제 표에서는 위 완성 수식과 같은 결과가 나옵니다.
자주 막히는 곳
ISBLANK와 =""는 같지 않습니다. =IF(ISBLANK(C2),"",C2/B2)도 이 예제에서는 똑같이 동작합니다. 차이는 검사하는 칸에 수식이 들어 있을 때 드러납니다. ISBLANK는 정말 아무것도 없는 칸만 TRUE로 봅니다. 그래서 위에서 만든 E5처럼 ""를 돌려주는 수식 칸은 눈에는 비어 보여도 ISBLANK가 FALSE를 냅니다. =IF(ISBLANK(E5),"",E5*2)는 막지 못하고 #VALUE!가 나지만, =IF(E5="","",E5*2)는 빈칸으로 둡니다. 수식 결과를 이어서 계산할 때는 ="" 쪽이 안전합니다.
| 증상 | 원인 | 해결 |
|---|---|---|
빈칸이 된 셀을 더하면 #VALUE! | ""는 숫자가 아니라 빈 글자입니다. =E5+1처럼 직접 더하면 오류가 납니다. | SUM을 쓰면 글자를 건너뛰고 더합니다. =SUM(E2:E9)의 결과는 19입니다. 이어지는 수식에도 IF(E5="","",…)를 씌웁니다. |
| 비어 보이는데 계산이 됨 | 칸에 스페이스가 한 칸 들어 있습니다. 스페이스는 글자라서 =""도, ISBLANK도 비었다고 보지 않습니다. | 칸을 선택하고 Delete로 지우거나, 조건을 TRIM(C2)=""로 바꿉니다. |
빈칸 자리에 -를 보이고 싶음 | 두 번째 인수가 보여 줄 값입니다. | =IF(C2="","-",C2/B2)처럼 따옴표 안에 원하는 글자를 넣습니다. |
빈칸과 0은 평균이 다르게 나옵니다
AVERAGE는 범위 안의 글자를 건너뛰고 숫자만 평균합니다. IF로 만든 빈칸("")은 글자이므로 빠지고, 0은 숫자이므로 들어갑니다.
| 수식 | 평균에 들어간 값 | 결과 |
|---|---|---|
그냥 계산한 D열 =AVERAGE(D2:D6) | 70%, 80%, 0%, 0%(최수아), 50% | 40% |
IF로 만든 D열 =AVERAGE(D2:D9) | 70%, 80%, 0%, 50% | 50% |
입력 안 한 사람을 평균에서 빼려면 IF로 빈칸을 만들어야 합니다. 뒤에 설명할 "0 숨기기"는 겉모습만 바꾸는 것이라 평균이 40% 그대로입니다.
다른 방법 — 계산은 두고 0만 안 보이게
값은 0이 맞는데 표가 0으로 가득해 보기 싫은 경우라면 수식을 고치지 않고 표시만 바꿀 수 있습니다. Microsoft 문서에 나오는 방법은 세 가지입니다.
- 시트 전체의 0 숨기기 — 파일 > 옵션 > 고급으로 가서 이 워크시트의 표시 옵션에서 0 값이 있는 셀에 0 표시 확인란을 끕니다. 그 시트의 모든 0이 빈칸처럼 보입니다.
- 고른 셀만 숨기기(사용자 지정 서식) — 셀을 선택하고 Ctrl + 1을 누른 뒤 숫자 > 사용자 지정에서 형식 상자에
0;-0;;@를 입력하고 확인을 누릅니다. 세미콜론으로 나뉜 칸이 차례로 양수;음수;0;글자의 모양이며, 세 번째 칸을 비워 두었기 때문에 0이 보이지 않습니다. - 수식으로 0을 빈칸으로 — 결과가 0일 때 빈칸을 돌려주는 IF를 씁니다. 문서의 예는
=IF(A2-A3=0,"",A2-A3)입니다.
1번과 2번은 겉모습만 바꿉니다. 문서에 따르면 숨겨진 값은 수식 입력줄에만 보이고 인쇄되지 않습니다. 값은 여전히 0이므로 평균·개수 계산에는 그대로 들어갑니다. 박지훈 님처럼 진짜 0도 함께 사라져 보인다는 점도 기억하세요.
| 하고 싶은 것 | 쓸 방법 |
|---|---|
| 입력 안 된 행을 비워 두고 평균에서도 빼기 | =IF(C2="","",계산) |
| 진짜 0은 두고 빈 행의 오류만 없애기 | =IF(C2="","",계산) |
| 값은 그대로, 인쇄물에서 0만 안 보이게 | 옵션 또는 사용자 지정 서식 0;-0;;@ |
자주 묻는 질문
IF에서 ""와 " "는 무엇이 다른가요?
""는 아무 글자도 없는 빈 값이고, " "는 스페이스 한 칸이라는 글자입니다. 둘 다 셀에서는 비어 보이지만 " "가 들어간 칸은 비었다고 판단되지 않습니다. 빈칸을 만들 때는 따옴표 두 개를 붙여 ""로 씁니다.
빈칸으로 만든 셀도 COUNT로 세어지나요?
세어지지 않습니다. COUNT는 숫자가 들어 있는 칸만 세므로, 예제의 달성률 열 D2:D9에 COUNT를 쓰면 숫자가 나온 4칸만 셉니다. 반면 COUNTA는 빈 텍스트("")도 세기 때문에 ""를 돌려주는 수식 칸까지 포함해 8칸을 모두 셉니다. 입력된 사람 수를 셀 때는 COUNT 쪽이 맞습니다.
오류만 빈칸으로 바꾸면 안 되나요?
IFERROR로 감싸면 빈 행의 #DIV/0!는 사라집니다. 하지만 최수아 님처럼 실적을 안 적은 행은 오류가 아니라 0%로 계산되므로 그대로 0%가 보입니다. 입력하지 않은 것과 0을 구분하려면 칸이 비었는지 직접 묻는 IF가 맞습니다.
함께 보면 좋은 글
- 엑셀 IF 함수와 중첩 IF 사용법 — IF 문법
- 엑셀 AND OR NOT 함수 사용법 — 조건 여러 개 묶기
- 엑셀 COUNT COUNTA 함수 차이와 사용법 — 빈칸을 세는 방식의 차이
- 엑셀 함수 목차 — 목적별 함수 조합 시리즈 전체 보기
댓글
댓글 남기기