목차▾
엑셀 RANDBETWEEN 함수란?
엑셀 RANDBETWEEN 함수는 두 수 사이의 정수 난수를 생성합니다 (양쪽 모두 포함). 로또 번호, 주사위, 추첨, 테스트 더미 데이터 생성에 표준. 휘발성(volatile) 함수라 시트 변경 시마다 매번 재계산 → 값 고정은 복사 → 값으로 붙여넣기.
구문은 =RANDBETWEEN(최솟값, 최댓값) 2인수. bottom > top이면 #NUM!(숫자 오류). 보안용 의사 난수가 아니므로 비밀번호·키 생성엔 부적합.
RAND vs RANDBETWEEN vs RANDARRAY
| 함수 | 동작 | 범위 | 버전 |
|---|---|---|---|
| RAND() | 0 이상 1 미만 소수 | 0 ≤ x < 1 | 모든 버전 |
| RANDBETWEEN(b, t) | 정수 난수 | b ≤ x ≤ t | 2007+ |
| RANDARRAY | 동적 배열 난수 | 사용자 지정 | Excel 365 |
→ 정수 = RANDBETWEEN, 소수 = RAND, 다수 동시 = RANDARRAY.
소수 난수 구현
=RAND() * (top - bottom) + bottom
→ bottom~top 사이 소수
휘발성 + 값 고정 워크플로
매번 변하지 않게 값으로 변환:
- 보조 셀에
=RANDBETWEEN(1, 100) - 셀 복사 (Ctrl+C)
- 같은 셀에 선택하여 붙여넣기 → 값 (Ctrl+Alt+V → V)
- 함수 → 값으로 변환, 더 이상 안 변함
또는 셀 편집 모드에서 F9 누른 후 Enter (한 셀씩).
실전 사용 시나리오 8가지
- 단순 정수 난수 —
=RANDBETWEEN(1, 100) - 로또 번호 1개 —
=RANDBETWEEN(1, 45)(중복 가능) - 로또 6개 중복 없이 (Excel 365) —
=TAKE(SORTBY(SEQUENCE(45), RANDARRAY(45)), 6) - 더미 데이터 — 나이
=RANDBETWEEN(20, 60), 부서=CHOOSE(RANDBETWEEN(1, 4), "영업", "개발", ...) - 추첨 (N명 중 1명) —
=INDEX(이름범위, RANDBETWEEN(1, COUNTA(이름범위))) - 코인 던지기 —
=IF(RANDBETWEEN(0, 1)=0, "앞", "뒤") - 주사위 —
=RANDBETWEEN(1, 6) - 날짜 난수 —
=RANDBETWEEN(DATE(2026,1,1), DATE(2026,12,31))
중복 없는 N개 추첨
RANDBETWEEN 단독은 중복 가능. 중복 없는 추첨은 별도 패턴:
Excel 365 (간단)
=TAKE(SORTBY(SEQUENCE(45), RANDARRAY(45)), 6)
→ 1~45 중 6개 중복 없이
SEQUENCE(45)로 1~45 만들고, RANDARRAY로 무작위 정렬, TAKE로 앞 6개.
구버전 (배열 수식)
보조 열 A1:A45 = SEQUENCE 또는 직접 1~45
보조 열 B1:B45 = =RAND()
결과: =INDEX(A:A, MATCH(SMALL(B:B, ROW(1:6)), B:B, 0))
자주 발생하는 함정 6가지
- 휘발성 — 매 변경 시 변함 — F9·셀 변경 시 재계산. 값 고정은 복사 → 값으로 붙여넣기
- bottom > top → #NUM! —
RANDBETWEEN(10, 5)→#NUM!(숫자 오류) - 중복 발생 (독립 시행) — 여러 번 호출하면 같은 값 가능. 중복 없는 추첨은 SORTBY+RANDARRAY
- 양쪽 모두 포함 —
RANDBETWEEN(1, 10)= 1~10 (10 포함) - 0~1 사이 소수 안 됨 — 소수는 RAND 또는
=RAND()*N + bottom - 보안 난수 아님 — 의사 난수(PRNG). 비밀번호·키 생성은 전용 도구
자주 묻는 질문
Q. RANDBETWEEN 함수 사용법은?
=RANDBETWEEN(최솟값, 최댓값) 형식. 두 수 사이 정수 난수 (양쪽 포함). 예: =RANDBETWEEN(1, 100) → 1~100. 시트 변경 시 매번 재계산.
Q. RAND와 차이는?
RAND는 0~1 소수, RANDBETWEEN은 정수. RAND() = 0.5234..., RANDBETWEEN(1, 100) = 47. 소수 난수가 필요하면 =RAND()*(top-bottom)+bottom.
Q. 매번 값이 바뀌어요.
휘발성 함수라 정상. 값 고정하려면 셀 복사 → 선택하여 붙여넣기 → 값 (Ctrl+Alt+V → V). 함수 → 값으로 변환, 더 이상 안 변함.
Q. 중복 없는 N개 추첨은?
Excel 365: =TAKE(SORTBY(SEQUENCE(N), RANDARRAY(N)), 추첨수). 1~45 중 6개: =TAKE(SORTBY(SEQUENCE(45), RANDARRAY(45)), 6). 구버전은 INDEX+SMALL+RAND 배열 수식.
Q. 음수 가능?
네. RANDBETWEEN(-100, 100) → -100~100. bottom과 top 부호 자유.
Q. 날짜 난수는?
=RANDBETWEEN(DATE(2026,1,1), DATE(2026,12,31)). 시리얼 번호 반환. 셀 서식 → 날짜로 표시.
Q. F9로 새 난수 받는 법?
F9 키 누르면 시트 전체 재계산 → RANDBETWEEN도 새 값. 또는 빈 셀에 아무 거나 입력해도 재계산.
Q. 구글 스프레드시트에서도 동일하게 작동하나요?
네. RANDBETWEEN·RAND 모두 표준 수학 함수로 Google Sheets, LibreOffice Calc, Apple Numbers, 한컴 한셀, WPS에서 동일하게 작동합니다.
본 페이지는 Microsoft Support 공식 RANDBETWEEN·RAND·RANDARRAY 문서를 기준으로 작성되었습니다. RANDBETWEEN은 의사 난수(PRNG) 생성기로, 보안·암호화 용도엔 적합하지 않습니다. 정확한 동작은 Excel 버전·환경에 따라 달라질 수 있으니 중요한 작업 전에는 실제 환경에서 확인하세요.