Excel IF·IFS: 학생 5명의 점수·등급·출석 판정 검산하기

92점인 학생A는 점수만 보면 합격이고 등급은 A입니다. 이 가상 입력의 C2 셀 출석률은 95%이며 G2 수식 결과도 합격입니다.

학생D의 가상 입력 B5=85, C5=60%를 적용한 E5와 F5의 결과는 점수 합격과 B등급이지만 G5 수식 결과는 불합격입니다. 이 세 결과를 한 셀에 섞지 않고 각각 계산하는 것이 이번 실습의 목적입니다.

학생 이름과 점수는 가상입니다. 실제 학교의 성적 산정이나 출결 규정으로 제시하는 기준이 아닙니다.

가상 학생 A와 D의 점수 합격·등급·출석 포함 판정을 별도 열로 비교한 설명 도해
가상 학생 A와 D의 점수 합격·등급·출석 포함 판정을 별도 열로 비교한 설명 도해. 가상 입력과 기대값을 설명한 그림이며 실제 Excel 실행 화면이나 실행 성공 증거가 아닙니다.

1. 원본 5명과 각 결과 열의 계약

첨부 practice-89.xlsx의 원본 A1:D6을 사용합니다. 원본 B2 셀에 숫자 점수 92를 넣고 C2 셀에 95% 또는 같은 비율의 숫자 0.95를 입력합니다. 아래 행도 표의 가상 점수와 비율을 같은 방식으로 입력합니다. 가상 입력 C2 셀의 값은 95/100=0.95로 검산합니다. 숫자 95를 넣으면 이 비율 입력 계약을 벗어납니다.

대상 점수 출석률 메모
학생A 92 95% 정상
학생B 78 72% 정상
학생C 55 88% 정상
학생D 85 60% 정상
학생E 63 81% 정상

E열은 60점 이상인지, F열은 90/80/70/60 기준의 등급, G열은 점수 60 이상이면서 출석률 80% 이상인지를 계산합니다. H열은 F열과 같은 등급을 중첩 IF로 표현한 비교용입니다. 이 순서로 열을 나누면 등급표가 틀린 것과 최종 합격 조건이 다른 것을 구분할 수 있습니다.

2. IF의 두 결과를 먼저 고정하기

IF는 조건이 참일 때와 거짓일 때 돌려줄 값을 나눕니다. E2에 아래 수식을 넣고 E6까지 채웁니다.

=IF(B2>=60,"합격","불합격")

학생A·B·D·E는 합격, 학생C는 불합격입니다. 비교 연산자를 >로 바꾸면 정확히 60점인 입력이 불합격으로 바뀝니다. 이번 기준은 ‘60점 이상’이므로 >=를 사용합니다. 빈칸이나 숫자처럼 보이는 문자까지 이 짧은 수식이 검증한다고 가정하지 않습니다.

3. 높은 등급부터 IFS에 놓는 이유

IFS는 나열한 조건 중 처음 TRUE가 된 조건의 결과를 반환합니다. F2의 수식을 F6까지 채웁니다.

=IFS(B2>=90,"A",B2>=80,"B",B2>=70,"C",B2>=60,"D",TRUE,"F")

마지막 TRUE는 앞의 조건에 해당하지 않는 경우의 기본 결과를 지정합니다. 이번 숫자 입력에서 60점 미만은 F가 됩니다. F를 ‘함수 실패’라는 뜻으로 쓰는 것이 아니라 가상의 최하위 등급으로 정의했습니다.

비교를 위해 H2:H6에는 다음 중첩 IF를 사용합니다.

=IF(B2>=90,"A",IF(B2>=80,"B",IF(B2>=70,"C",IF(B2>=60,"D","F"))))

두 열은 모두 A·C·F·B·D여야 합니다. IFS를 지원하지 않는 환경에서 함수 이름 오류가 나면 지원 여부를 확인하고, 이 중첩 IF로 같은 조건 순서를 대조할 수 있습니다. IFS의 지원 버전은 첨부의 Microsoft 공식 출처에서 확인하세요.

4. 조건 순서 오류를 비교하고 복구하기

다음은 사용하면 안 되는 반례입니다.

=IFS(A2>=60,"D",A2>=70,"C",A2>=80,"B",A2>=90,"A",TRUE,"F")

첨부 경계 시트 F열에 이 잘못된 수식이 따로 있습니다. 90점도 첫 번째 >=60을 만족해 D가 됩니다. 정상 D열의 90점 결과 A와 나란히 비교합니다. 오류의 원인은 조건 순서입니다. 업무 사본에서 이 잘못된 순서를 발견하면 90·80·70·60 순서의 정상 수식으로 다시 입력하고 90점=A를 확인합니다. 첨부 F열은 반례를 보존하므로 지우지 않습니다. 낮은 등급부터 썼다는 이유만으로 수식을 짧게 만들었다고 판단해서는 안 됩니다.

경계 입력 점수 합격 정상 등급 잘못된 순서의 등급
59 불합격 F F
60 합격 D D
89 합격 B D
90 합격 A D
IFS 조건 순서에 따라 89점과 90점의 등급이 잘못 D가 되는 반례 설명 도해
IFS 조건 순서에 따라 89점과 90점의 등급이 잘못 D가 되는 반례 설명 도해. 가상 입력과 기대값을 설명한 그림이며 실제 Excel 실행 화면이나 실행 성공 증거가 아닙니다.

5. 출석 조건은 빈 입력을 먼저 분리하기

G2:G6은 아래 수식을 사용합니다. 점수나 출석률이 비어 있으면 ‘입력 확인’을 반환한 뒤, 값이 있는 경우에 두 비교를 적용합니다.

=IF(OR(B2="",C2=""),"입력 확인",IF(AND(B2>=60,C2>=0.8),"합격","불합격"))

최초 기대 결과는 합격·불합격·불합격·불합격·합격입니다. 가상 경계 입력 A6:B8에 92점/79%, 92점/80%, 92점/빈 출석률을 넣은 E6:E8 셀의 수식 결과를 대조합니다. 결과는 각각 불합격·합격·입력 확인입니다. 마지막 결과는 출석이 0이라는 판정이 아닙니다.

6. 입력을 바꾼 뒤 되돌리며 확인하기

학생B 가상 입력의 원본 C3 셀 값을 80%로 바꾸고 G3 수식 결과를 확인합니다. E3=합격, F3=C는 유지되고 G3만 합격으로 바뀌어야 합니다. C3을 다시 72%로 돌려 G3이 불합격인지 확인합니다. ‘기대값’ 시트의 고정 표는 최초 입력용이므로 조건을 바꾼 상태에 그대로 적용하지 않습니다.

다음으로 원본 C2를 비웠다가 95%로 복구합니다. G2는 입력 확인에서 합격으로 돌아와야 합니다. 원본 E/F 수식에는 G열의 빈칸 검사까지 들어 있지 않으므로 빈 점수 입력을 모든 열에서 안전하게 처리하는 완성 성적 시스템으로 쓰면 안 됩니다.

7. 중단하고 원본을 확인할 입력

이 예제의 계약은 0~100의 숫자 점수와 0~1의 숫자 출석률입니다. 문자 ‘92점’, 공백, 원본 오류, 범위 밖 값이 있으면 합격 결과를 사용하지 말고 입력부터 확인합니다. 숫자 여부는 별도의 ISNUMBER 검사로 볼 수 있지만 수식에 넣지 않은 검사가 자동으로 적용된다고 주장하지 않습니다.

실제 파일의 최초 결과와 경계값은 LibreOffice 재계산 및 Python의 독립 조건 분기로 비교했습니다. Microsoft Excel 앱을 실행한 검증은 아닙니다. 파일의 저장 수식에는 호환 저장을 위한 표기가 포함될 수 있지만, 독자가 수식 입력줄에 직접 넣을 식은 위의 IF와 IFS 형태입니다.

가상 92점의 출석 79%·80%·빈칸을 구분하고 숫자 입력 범위를 확인한 설명 도해
가상 92점의 출석 79%·80%·빈칸을 구분하고 숫자 입력 범위를 확인한 설명 도해. 가상 입력과 기대값을 설명한 그림이며 실제 Excel 실행 화면이나 실행 성공 증거가 아닙니다.

본문과 같은 입력으로 연습하기

실습 XLSX에는 본문에서 지정한 셀과 수식이 들어 있습니다. 검산 자료 ZIP에는 같은 XLSX와 입력·수식 CSV, 실습 설명, README 및 오프라인 Python 검산 코드가 있습니다. 원본 업무 파일을 덮어쓰지 말고 사본으로 연습하세요. Microsoft Excel 앱의 실제 실행 결과로 제공하는 파일은 아닙니다.

공식 자료

IF function | Microsoft Support

IFS function | Microsoft Support

출처 원문 수집일: S1 2026-09-24; S2 2026-09-24.

작성자 소개