회사 워크숍이나 학교 수련회에서 수십, 수백 명의 인원을 대상으로 조 편성을 해본 경험이 있으신가요? 1조, 2조, 3조... 일일이 타이핑하거나 복사-붙여 넣기를 반복하다 보면 시간도 오래 걸리고 실수하기도 쉽습니다. 매달 돌아오는 당직 순번표나 청소 당번을 정하는 일도 마찬가지죠.
이렇게 '일정한 규칙으로 반복되는 패턴'을 만들어야 할 때, 엑셀 고수들은 복잡한 함수 대신 아주 기초적인 수학 함수 하나를 꺼내 듭니다. 바로 나눗셈의 나머지를 구해주는 MOD 함수입니다.
오늘은 단순히 계산기 기능인 줄 알았던 MOD 함수를 활용하여, 실무에서 가장 골치 아픈 '그룹 나누기(조 편성)'와 '순환 패턴 만들기(당직 순번)'를 단 몇 초 만에 해결하는 마법 같은 방법을 알려드리겠습니다.

1. MOD 함수 기초: 나머지의 재발견
MOD는 'Modulo'의 약자로, 어떤 수를 나누었을 때의 '나머지 값'만을 반환하는 함수입니다.
=MOD(Number, Divisor)
=MOD(나누어지는 수, 나눌 수)
예를 들어, 10개의 사탕을 3명에게 똑같이 나눠주면 어떻게 될까요?=MOD(10, 3)의 결과는 1이 됩니다. (3명에게 3개씩 주고 사탕 1개가 남음)
이 간단한 원리가 실무에서는 어떻게 쓰일까요? 핵심은 '순환(Cycle)'에 있습니다. 어떤 숫자든 '3'으로 나누면 나머지는 항상 0, 1, 2 중 하나가 나옵니다. 이 0, 1, 2가 계속 반복되는 성질을 이용하는 것입니다.
2. 실전 예제 ①: 참가자 20명을 4개 조로 자동 편성하기
가장 흔한 시나리오입니다. 참가자 명단이 20명이 있고, 이들을 1조부터 4조까지 순서대로(1, 2, 3, 4, 1, 2, 3, 4...) 배정하려고 합니다.
Step 1: 기초 아이디어 (실패 사례)
참가자 옆에 1부터 20까지 순번(No.)이 매겨져 있다고 가정해 봅시다. 우리는 4개 조가 필요하므로, 순번을 4로 나누어 보겠습니다. (A열에 순번, B열에 이름, C열에 조를 입력한다고 가정)
이렇게 입력하고 아래로 드래그하면 결과가 어떻게 나올까요?1, 2, 3, 0, 1, 2, 3, 0... 처럼 나옵니다.
문제가 발생했습니다. 우리는 '4조'가 필요한데, 엑셀은 4로 나누어 떨어지는 수를 '0'으로 표시합니다. '0조'는 없으니 이것을 '4조'로 바꿔줘야 합니다.
Step 2: 전문가의 해결책 (완벽한 공식)
이 문제를 해결하는 아주 유명한 공식이 있습니다. 나머지가 0이 나오는 것을 방지하기 위해, 나누어지는 수에서 미리 1을 빼고 나눈 뒤, 결과에 다시 1을 더하는 방식입니다.
=MOD(순번 - 1, 조 개수) + 1
우리 예제에 적용하면 다음과 같습니다.
이 수식을 적용하면 비로소 1, 2, 3, 4, 1, 2, 3, 4...로 완벽하게 순환하는 조 편성표가 완성됩니다. 인원이 100명이든 1,000명이든 드래그 한 번이면 끝납니다.
3. 실전 예제 ②: 매일 바뀌는 '당직 순번' 자동화하기
이번에는 응용 버전입니다. 팀원 5명(김철수, 이영희, 박민수, 최지훈, 정수진)이 매일 돌아가면서 당직을 섭니다. 날짜가 쭉 나열되어 있을 때, 옆에 당직자 이름을 자동으로 띄워보겠습니다.
Step 1: 핵심 원리 파악
5명이 순환하므로, 우리는 1, 2, 3, 4, 5가 반복되는 패턴이 필요합니다. 위에서 배운 공식을 활용하면 되겠죠? 나눌 수는 '5'가 됩니다.
Step 2: ROW 함수와의 결합
별도의 순번 열이 없다면, 엑셀의 행 번호를 알려주는 ROW() 함수를 이용하면 편리합니다. 데이터가 2행부터 시작한다면, ROW(A2)의 값은 '2'입니다. 순번을 1부터 시작하게 맞추려면 ROW(A1)을 쓰거나 ROW()-1 처럼 보정이 필요합니다.
가장 간단하게, 당직자 명단 옆에 아래 수식을 입력합니다.
이 수식을 아래로 드래그하면 날짜 옆에 1, 2, 3, 4, 5, 1, 2... 번호가 생성됩니다. 이 번호를 VLOOKUP 함수나 INDEX/MATCH 함수와 연결하면 당직자 이름까지 자동으로 불러올 수 있습니다.
4. 보너스 팁: 가독성을 높이는 '얼룩말 무늬' 만들기 (조건부 서식)
MOD 함수는 보고서의 가독성을 높이는 데도 최고입니다. 표에서 한 줄 건너 한 줄씩 색상을 다르게 칠하는 '얼룩말 무늬(Zebra Striping)'를 만들 때 사용됩니다.
원리는 간단합니다. "행 번호(ROW)를 2로 나누었을 때 나머지가 0인 행(짝수 행)만 색칠해라"라는 조건을 거는 것입니다.
- 색상을 적용할 표 범위를 드래그합니다.
- [홈] 탭 - [조건부 서식] - [새 규칙]을 클릭합니다.
- '수식을 사용하여 서식을 지정할 셀 결정'을 선택합니다.
- 다음 수식을 입력합니다:
=MOD(ROW(), 2) = 0 - [서식] 버튼을 눌러 원하는 배경색(예: 연한 회색)을 지정하고 확인을 누릅니다.
이렇게 하면 데이터가 아무리 많아져도 자동으로 짝수 행에만 색이 칠해져서 표가 훨씬 전문적이고 읽기 편해집니다.
5. 마무리하며
오늘은 나눗셈의 나머지, 즉 '자투리'를 계산하는 줄만 알았던 MOD 함수가 실무에서 어떻게 '패턴'과 '규칙'을 만들어내는지 알아보았습니다.
핵심 요약:
- MOD 함수는 주기를 가지고 반복되는 데이터를 다룰 때 사용한다.
- N개 그룹으로 나눌 때 0이 나오는 것을 막는 공식:
=MOD(순번-1, N)+1 - ROW() 함수와 결합하면 별도 순번 없이도 자동화가 가능하다.
- 조건부 서식에서 홀수/짝수 행을 구분하는 데 필수적이다.
이제 수백 명의 조 편성 앞에서 한숨 쉬지 마세요. MOD 함수 하나면 3초 만에 퇴근 준비를 마칠 수 있습니다. 오늘 배운 공식은 꼭 어딘가에 메모해 두시길 바랍니다. 분명히 요긴하게 쓰일 날이 올 것입니다.
도움이 되셨다면 공감과 댓글 부탁드립니다. 다음 시간에도 칼퇴를 부르는 유용한 엑셀 팁으로 찾아오겠습니다!