홈 › 엑셀 수식·함수

엑셀 명단 랜덤 뽑기

컴퓨터의 암호학적 난수(crypto)로 뽑아서 누가 해도 결과를 미리 알 수 없어요. 결과 파일에 추첨 기록이 남아요.

파일은 서버로 전송되지 않고 내 기기에서만 처리돼요
명단 엑셀·CSV 파일을 놓거나 눌러서 고르세요첫 행은 제목 (이름, 연락처 등)

랜덤 추첨, 공정하게 섞는 방법과 기록 남기기

추첨이 필요한 순간

이벤트 응모자 중 경품 당첨자를 뽑을 때, 연수 참가자를 조로 나눌 때, 발표 순서를 정할 때처럼 ‘누가 해도 결과를 미리 알 수 없어야 하는’ 일에 추첨 도구를 써요. 엑셀의 RAND 함수로도 섞을 수 있지만 칸을 고칠 때마다 다시 계산돼 결과가 바뀌고, 나중에 어떻게 뽑았는지 설명하기 어려워요. 이 도구는 명단 파일을 그대로 읽어 한 번 섞고, 결과와 함께 추첨 일시·방식·대상 인원을 기록한 엑셀 파일을 만들어 줘요.

사용 방법

파일 놓는 칸에 1번, 방식 선택에 2번, N 칸에 3번, 중복 기준 열 선택에 4번 표시가 붙은 화면

1단계명단 넣고 방식 고르기

  1. ① 첫 행이 제목인 명단 파일을 놓아요. 그림은 12줄짜리 응모자 명단이에요.
  2. ② N명 뽑기, N개 조로 나누기, 전체 순서 섞기 가운데 골라요.
  3. ③ 뽑을 인원이나 조 수를 적어요. 명단보다 많으면 안내가 뜨고 추첨하지 않아요.
  4. ④ 같은 사람이 여러 번 응모했다면 연락처처럼 사람을 가를 수 있는 열을 골라요. 처음 나온 행만 남기고 나머지는 대상에서 빼요.
추첨하기 버튼에 5번, 대상 인원 안내에 6번, 결과 표에 7번 표시가 붙은 화면

2단계추첨하고 기록 받기

  1. ⑤ 추첨하기를 누르면 바로 결과가 나와요. 다시 누르면 새로 섞어요.
  2. ⑥ 대상 인원, 중복으로 뺀 인원, 추첨 시각이 나와요.
  3. ⑦ 순번이나 조와 함께 이름, 원래 명단의 몇 번째 행이었는지가 보여요. ‘결과 엑셀 받기’로 기록을 남겨요.

공정하게 섞는 방법

도구는 브라우저의 암호용 난수 생성기로 숫자를 뽑아요. 다만 32비트 난수를 그냥 인원수로 나눈 나머지를 쓰면 앞번호가 아주 조금 더 자주 나오는 치우침이 생겨서, 인원수의 배수를 넘는 난수는 버리고 다시 뽑아요. 이렇게 얻은 숫자로 명단 맨 뒤 사람부터 앞쪽의 아무 자리와 자리를 바꾸는 피셔–예이츠 섞기를 해요. 모든 순서가 똑같은 확률로 나오는 방법이에요.

피셔–예이츠 섞기다섯 명 A부터 E를 섞을 때 마지막 자리 E를 1부터 5번 자리 중 무작위 한 곳과 바꾸고, 다음에는 4번 자리를 1부터 4번 중 한 곳과 바꾸는 식으로 앞으로 오며 섞어요.뒤에서부터, 남은 자리 중 하나와 바꾸기ABCDE5번 자리 ↔ 무작위 2번AECDB4번 자리 ↔ 무작위 1번DECAB3번 자리 ↔ 자기 자신 (그대로)DECAB2번 자리 ↔ 무작위 1번회색 칸은 자리가 확정된 칸 · 최종 순서 E D C A B
맨 뒤 자리부터 한 칸씩 앞으로 오며, 남은 자리 가운데 하나와 바꿔요.
방식섞은 뒤 하는 일그림 속 명단 12행, 연락처 중복 제외
N명 뽑기 (N=3)섞인 순서 앞 3명이 당첨, 순번 1~3대상 10명 중 3명
N개 조로 나누기 (N=3)섞인 순서대로 1조·2조·3조에 번갈아 배정4명·3명·3명
전체 순서 섞기섞인 순서가 그대로 순번1~10번

조 나누기는 한 명씩 돌아가며 배정해서 조 인원 차이가 한 명을 넘지 않아요. 명단에 김민준과 이서연이 두 번씩 있어 연락처 기준으로 2명을 빼면 대상은 10명이에요.

추첨을 공개할 때 챙길 것

추첨 결과를 공지할 때는 대상 인원, 중복 처리 기준, 추첨 일시를 함께 밝히면 뒷말이 줄어요. 받은 엑셀의 ‘추첨기록’ 시트에 이 정보가 모두 적혀 있어서 캡처해 붙이거나 파일째 보관하면 돼요. 원본 명단 파일도 함께 남겨 두면, 결과 표의 ‘원래 행’ 번호로 당첨자가 실제 명단 어디에 있었는지 누구나 확인할 수 있어요.

주의할 점

더 궁금한 점

결과 엑셀의 행 순서는 어떻게 되나요?

N명 뽑기는 당첨자가 순번대로 위에 오고 나머지가 원래 순서로 이어져요. 조 나누기는 조 이름순, 그 안에서는 배정 순서대로 정렬돼요. 중복으로 빠진 행은 ‘(중복 제외)’로 표시돼 맨 아래에 남아요.

시트가 여러 개인 파일이면요?

시트 선택 칸에서 명단이 든 시트를 고르면 돼요. 시트를 바꾸면 인원수와 중복 기준 열 목록도 그 시트에 맞게 바뀌어요.

결과 표의 이름 열은 어떻게 고르나요?

제목에 ‘이름’, ‘성명’, name이 들어간 열을 찾아 보여 주고, 없으면 첫 번째 열을 써요.

명단 파일 그대로 공정하게 추첨하기

이벤트 응모자, 신청자 명단이 엑셀로 있을 때 이름만 따로 복사해 추첨기에 넣으면 연락처나 주소를 다시 찾아 붙여야 해요. 이 도구는 엑셀 파일을 그대로 올려 추첨하고, 원래의 모든 열을 유지한 채 결과 열을 붙인 파일을 만들어 줘요. 당첨자는 맨 위로 정렬되고 노란색으로 표시돼서 바로 연락할 수 있어요.

세 가지 방식

중복 응모 걸러 내기

한 사람이 여러 번 응모했다면 ‘같은 사람 한 번만’에서 연락처나 아이디 열을 고르세요. 같은 값은 처음 나온 행만 추첨 대상에 넣고 나머지는 ‘(중복 제외)’로 표시해요. 몇 명이 빠졌는지도 추첨 기록에 남아요.

추첨이 공정하려면

이 도구는 브라우저가 제공하는 암호학적 난수 생성기(crypto.getRandomValues)를 쓰고, 한쪽으로 치우치지 않는 방식으로 숫자를 뽑아 명단을 섞어요(Fisher–Yates). 같은 파일로 다시 누르면 결과가 달라지므로, 공개 추첨이라면 화면을 공유하거나 녹화한 상태에서 한 번만 누르고, 결과 파일의 ‘추첨기록’ 시트(일시·방식·대상 인원)를 함께 보관하세요. 명단은 서버로 보내지 않아요.

자주 묻는 질문

이미 당첨된 사람을 빼고 다시 뽑으려면요?

결과 파일에서 당첨 행을 지우고 그 파일을 다시 올려 추첨하면 돼요.

가중치(응모 횟수만큼 확률)를 줄 수 있나요?

이 도구는 모든 사람에게 같은 확률을 줘요. 응모 횟수만큼 확률을 주려면 중복 제외를 끄고 응모한 횟수만큼 행이 있는 명단을 올리세요.

휴대전화에서도 되나요?

돼요. 파일 앱에서 엑셀 파일을 고르면 같은 방식으로 추첨하고 결과 파일을 받을 수 있어요.

함께 쓰면 좋은 도구