엑셀365 RAND, RANDBETWEEN 함수 활용 랜덤 값 생성법


엑셀365 RAND, RANDBETWEEN 함수란?

엑셀365의 RAND 함수RANDBETWEEN 함수는 랜덤(무작위) 숫자를 생성하는 함수로, 샘플 데이터 만들기, 시뮬레이션, 무작위 테스트, 추첨 등 다양한 용도로 활용됩니다.

  • RAND() : 0 이상 1 미만의 소수 랜덤 값 생성
  • RANDBETWEEN(bottom, top) : 지정된 범위 내의 정수 랜덤 값 생성

이 두 함수는 엑셀365에서 자동으로 값이 계속 바뀌는 동적 함수입니다. 워크시트를 수정하거나 다시 계산할 때마다 새로운 난수가 생성되므로, 테스트 시트 작성이나 확률 시뮬레이션 등에 유용하게 사용됩니다.


RAND 함수 기본 사용법

기본 문법:

=RAND()
  • 0 ≤ 반환 값 < 1
  • 소수점 15자리까지 무작위 소수 생성
  • 별도의 인수가 없음

예시:

=RAND()

→ 예: 0.47289163 (계산할 때마다 바뀜)

활용 예시:

  • 확률 기반 시뮬레이션 (예: 당첨 확률 30% 설정 등)
  • 소수값 기반 데이터 샘플 생성
  • 동점 시 정렬 기준용 보조 열

실무 팁:

RAND 값이 계속 바뀌는 것이 싫다면?

  • 값 복사 + 붙여넣기(값만)으로 고정 가능
  • 또는 F9로 수식이 아닌 고정값 입력

RANDBETWEEN 함수 기본 사용법

기본 문법:

=RANDBETWEEN(bottom, top)
  • bottom: 최솟값 (정수)
  • top: 최댓값 (정수)

예시:

=RANDBETWEEN(1, 100)

→ 1부터 100 사이의 정수 중 무작위 값 생성 (예: 47)

활용 예시:

  • 무작위 응모자 번호 생성
  • 가상의 판매 수치나 온도 값 만들기
  • 번호표, 좌석 배정 자동화

RAND, RANDBETWEEN 함수 실무 활용 예시

1. 무작위 추첨 번호 부여

=RANDBETWEEN(1000, 9999)

→ 4자리 랜덤 번호 생성 (예: 이벤트 응모 코드)

2. 임의의 평가 점수(1~5) 생성

=RANDBETWEEN(1, 5)

3. 할인율(0~20%) 랜덤 지정

=ROUND(RAND()*0.2, 2)

→ 0~0.2 사이의 값 → 소수점 둘째 자리까지 반올림
→ 결과 예: 0.12 → 12%

4. 날짜 범위 안에서 무작위 날짜 생성

=RANDBETWEEN(DATE(2024,1,1), DATE(2024,12,31))

→ 날짜 형식으로 바꾸면 랜덤 날짜로 표시됨


정렬용 랜덤 번호 만들기 (무작위 순서 섞기)

1단계: RAND 열 생성

  • =RAND()를 리스트 옆 열에 입력

2단계: 정렬

  • RAND 열 기준으로 오름차순 정렬
    → 데이터 순서가 무작위로 재배열됨

활용 예시:

  • 무작위 발표 순서
  • 좌석 배치 자동화
  • 테스트 문제 번호 순서 섞기

주의: 워크시트가 변경될 때마다 값이 바뀌므로, 결과를 유지하려면 복사 → 값 붙여넣기 필수!


고정된 랜덤 값을 원할 때는?

RAND나 RANDBETWEEN은 셀 값이 바뀔 때마다 자동으로 재계산됩니다.
고정값으로 유지하려면 다음 방법 중 하나를 사용하세요.

방법 1: 복사 후 값으로 붙여넣기

  • RAND나 RANDBETWEEN 수식 복사 → 마우스 우클릭 → ‘값 붙여넣기’

방법 2: F9로 수식이 아닌 값 삽입

  • 수식 입력 중 F9 누르면 현재 계산된 값이 고정된 숫자로 삽입됨

Q&A

Q. RANDBETWEEN 결과에 중복이 생기는데 어떻게 해결하나요?

기본적으로 RANDBETWEEN은 중복을 허용합니다. 중복 없는 랜덤 번호를 만들고 싶다면 다음과 같은 방식이 필요합니다:

방법 1: RAND + RANK 조합

=RANK.EQ(RAND(), $A$1:$A$10)

→ 1~10 사이의 중복 없는 숫자 부여 가능

방법 2: SORTBY 함수 사용 (엑셀365 전용)

=SORTBY(SEQUENCE(10), RANDARRAY(10))

→ 1~10 숫자를 무작위로 섞은 배열 생성

이 방법은 중복 없는 무작위 순번 추출에 매우 효과적입니다.


Q. RANDBETWEEN은 소수점을 포함할 수 없나요?

맞습니다. RANDBETWEEN은 정수만 반환합니다. 소수점이 포함된 무작위 값을 원할 경우 RAND 함수를 조합하세요.

예시:

=ROUND(RAND() * (최댓값 - 최솟값) + 최솟값, 자릿수)

예:

=ROUND(RAND()*5 + 1, 1)

→ 1.0 ~ 6.0 사이의 소수점 첫째 자리 랜덤 값 생성


Q. 특정 범위 안에서 랜덤 값을 여러 개 중복 없이 추출하려면?

엑셀365에서는 SEQUENCE + RANDARRAY + INDEX 조합으로 중복 없는 추출이 가능합니다.

예: 1~100 중에서 5개 뽑기

=INDEX(SORTBY(SEQUENCE(100), RANDARRAY(100)), SEQUENCE(5))

설명:

  • SEQUENCE(100): 1~100 숫자 생성
  • RANDARRAY(100): 무작위 숫자 생성 → 정렬 기준
  • SORTBY: 무작위 정렬
  • INDEX: 앞에서 5개 추출

이 방식은 복권 추첨, 샘플링, 테스트 데이터 생성 등에 매우 유용합니다.


엑셀365의 RAND, RANDBETWEEN 함수는 단순한 랜덤 값 생성 기능을 넘어, 데이터 자동화, 분석 시뮬레이션, 무작위 테스트 등 실무에 꼭 필요한 도구입니다. 특히 SORTBY, SEQUENCE, RANDARRAY 같은 함수들과 조합하면 중복 제거, 무작위 순서 생성 등 고급 활용도 손쉽게 가능해집니다. 지금부터 랜덤도 똑똑하게 만들어보세요!