엑셀 쿠폰 번호 생성 - 함수 한줄로 해결! :: 엑셀함수공식

쿠폰 번호를 무작위로 생성하는 공식의 사용법 및 동작원리를 알아봅니다.

홈페이지 » 엑셀 쿠폰 번호 생성 - 함수 한줄로 해결! :: 함수 공식

엑셀 쿠폰 번호 생성 공식

엑셀 쿠폰 번호 생성 목차 바로가기
함수 공식
=CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))

예제파일 다운로드

호환성
운영체제호환성
Windows 버전모든 엑셀 버전에서 사용 가능합니다.
Mac 버전모든 엑셀 버전에서 사용 가능합니다.
사용된 기초 함수
입력한 코드에 해당하는 문자를 반환합니다.
숫자를 지정한 자리수에서 반올림합니다.

엑셀 쿠폰 번호 생성 공식 알아보기

공식 설명

0~9 사이의 숫자 그리고 A~Z 사이의 알파벳 중 하나를 무작위로 반환하는 공식입니다. 위 공식을 사용하면 n 자리수의 랜덤 번호를 생성할 때 유용하게 사용할 수 있습니다. 하지만 위 공식은 생성된 번호 간의 중복값 확인이 안 되므로, 번호를 생성한 뒤 '중복값 제거' 기능을 통해 중복값을 반드시 제거해줘야 합니다.

위 공식은 숫자와 알파벳 중 하나를 무작위로 반환하며, 만약 0~9 사이의 숫자 또는 A~Z 사이의 알파벳 중 하나만 무작위로 반환해야 할 경우 아래 공식으로 간단하게 해결할 수도 있습니다.

0-9 숫자 중 하나를 무작위로 반환하는 공식

=RANDBETWEEN(0,9)

A-Z 알파벳 중 하나를 무작위로 반환하는 공식

=CHAR(RANDBETWEEN(65,90))
사용예제
  1. 4자리의 랜덤 엑셀 쿠폰 번호 만들기
    =CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))
    ="3B19"   '4자리의 랜덤 쿠폰번호를 생성합니다.

    엑셀 쿠폰 번호 4자리_R
    4자리의 쿠폰 번호를 무작위로 생성합니다
  2. 12자리의 랜덤 엑셀 쿠폰 번호 만들기
    =CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&"-"&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&"-"&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))&CHAR(INT(IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)))
    ="EU6P-N7N6-510G"   '12자리의 랜덤 쿠폰번호를 생성합니다.

    엑셀 12자리 쿠폰 번호 생성_R
    12자리의 쿠폰 번호를 무작위로 생성합니다
공식의 동작원리
  1. RAND() 함수는 0~1 사이의 소수를 무작위로 반환합니다.
    =RAND()
    =0.149, 0.21293, 0.4924 등...
  2. ROUND(RAND(),0) 는 RAND()로 나온 결과값이 0.5 이상일 경우 1을, 0.5 미만일경우 0을 반환합니다.
    =ROUND(0.572,0)
    =1
  3. A+RAND()*B 는 A와 B사이의 숫자를 무작위로 반환합니다. RANDBETWEEN(A,B) 와 동일한 결과값을 반환합니다.
    =65+RAND()*25
    =65+(0.4924)*25
    =65+12.31
    =77.31
  4. IF 함수로 ROUND(RAND(),0) 의 값이 1일 경우 65~95 사이의 숫자를, 값이 0일 경우 48~57 사이의 숫자를 반환합니다.
    =IF(ROUND(RAND(),0),65+RAND()*25,48+RAND()*9)
    =IF(1,65+RAND()*25,48+RAND()*9)
    =IF(1,77.31,52.43)
    =77.31
  5. INT 함수는 숫자의 소수점을 내림한 정수를 반환합니다.
    =INT(77.31)
    =77
  6. CHAR 함수는 입력한 숫자코드에 해당하는 알파벳, 기호 또는 숫자를 반환합니다.
    =CHAR(77)
    ="M"  'CHAR(48~57)은 0~9 사이의 숫자이며, CHAR(65~95)는 A~Z 사이의 알파벳입니다.

관련링크 : MS 홈페이지 엑셀 RAND 함수 사용법

5 2 votes
게시글평점
현재 페이지 댓글알림 신청
알림 설정
guest
5 Comments
Inline Feedbacks
View all comments
Mario
Mario
2020년 7월 7일 7:45 오후
게시글평점 :
     

엑셀로 못하는 것은 무엇 ... 새로운 세계를 보는 것 같네요
이제 시작이라 재미 있네요

psnghn
psnghn
2020년 7월 8일 2:22 오후
게시글평점 :
     

Check Digit 을 포함한 카드 번호 생성도 가능할까요?

psnghn
psnghn
2020년 7월 8일 6:10 오후

check digit 은 주민번호 끝자리처럼 발생시킨 숫자가 유효한지를 확인할 수 있는 값입니다.

Last edited 3 월 전 by psnghn
5
0
여러분의 생각을 댓글로 남겨주세요.x