엑셀 난수 생성 TIP

2020. 9. 2. 18:41엑셀/빠른 엑셀

728x90
반응형

이번 포스팅은 난수 생성 관련 팁입니다. 최근 포스팅을 하다 보니 난수를 만들어서 활용하는 일이 많아졌네요. 주로 예제 데이터를 만드는 일에 사용하게 됩니다. 그런데 이것이 만만치 않습니다. 그냥 마구 써야지 생각해도 막상 값을 마구 넣다 보면 어딘가 부족하다는 느낌이 계속 들게 되더라고요. 그래서 그냥 속 편하게 난수 함수로 작업을 합니다. 

사용하는 함수는 RANDBETWEEN 입니다. 사용방법은 간단합니다. 

=RANDBETWEEN(1,100)  -> 1과 100 사이의 정수를 무작위로 반환

 

저는 주로 단가나 판매수량을 주로 이 함수를 이용해서 만들어 왔습니다. 해서 시뮬레이션 용 샘플 데이터 생성 시 제가 사용해서 효율이 좋은 팁을 몇 가지 소개합니다. 

1. 금액 (또는 단가) 

예시 데이터를 구성할때는 보기 편한 게 좋죠. 그래서 ROUND와 같이 사용합니다.

=ROUND(RANDBETWEEN(1000,10000),-2)  

천 원에서 만원 사이의 무작위 단가를 백 원 단위로 만들고 싶을 때 사용합니다. 

RAND 함수는 셀이 변경될때마다 계속 변경됩니다. 따라서 쓸만한 값이 나왔다 싶을 때는 값 복사를 하는 것이 좋습니다. 

2. 일자  

거래일자를 만드는 것도 RAND 를 이용합니다. 시작일을 정하고 RANDBETWEEN으로 반환된 값을 더하는 방식을 사용합니다.

그림처럼 표의 맨 첫 날짜를 정해 놓고 옆 셀에 RANDBETWEEN으로 난수를 정한 다음 윗 행의 날짜에 난수 값을 더하는 방식으로 만듭니다. 이렇게 되면 정해놓은 범위 내에서 불규칙하게 날짜가 증가합니다. 간단하지만 강력하죠. 직접 타이핑해서 넣어 보신 분들은 이해하실듯합니다. 

3. 무작위 배부율

배부 비율을 무작위로 만들때도 사용합니다. 

난수를 생성해 놓고 난수의 비율을 만들면 간단히 해결됩니다. 이때 특정 그룹별로 비율을 만들고 싶을 때에는 SUMIFS를 사용하면 됩니다. 제가 애용하는 엑셀로 배부 하기의 SUMIFS 방식과 동일하죠. 

2018/07/11 - [엑셀/빠른 엑셀] - 엑셀로 배부하기

 

엑셀로 배부하기

원가/관리 회계와 관련된 일을 하다보니 '배부'라는 일이 일상이 되어 버린지 오래되었네요. 해서 이번에는 엑셀로 배부를 하는 방법들에 대해서 다뤄 봅니다. 1. 배부 ??  : 우선 이번 포스팅에��

myterraincognito.tistory.com

 

 

4. 확율 적용하기   

이번 포스팅은 사실 이것 때문입니다. 제가 안 까먹으려고요.  지금 수불부를 구성하는 예제를 만들고 있는데 거래유형을 난수로 구성하려고 하다 보니 맘처럼 잘 안돼서 궁리를 좀 하다가 보니 답이 나왔습니다. 

하고 싶은일은 자재의 구매와 소비(생산 출고)를 적절한 비율로 List를 구성하는 것인데요. 

처음 작성한 상태

일자별로 거래유형을 하나 씩 적용하고 싶었습니다. 그래서 거래유형코드를 1,2로 정하고 RANDBETWEEN(1,2)로 했더니 구매가 생산 출고 보다 더 많은 건을 갖게 되어서 별로 더군요. 보통은 구매는 한 번에 구매하고 생산 투입이 여러 번 있는 것이 일반적이라 데이터가 현실감이 떨어지게 되었습니다. 

구매는 1건이면 생산은 한 4건정도 있으면 좋겠다고 고민하다 문득 떠오른 게 그럼 생산 출고를 여러 개 넣으면 되겠네... ㅋㅋ

그냥  RANDBETWEEN(1,4) 로 고치고 거래유형을 VLOOKUP 하는 표에 생산 출고를 수정했습니다. 고민이 해결되었네요. 만족~! 

이제 구매 보다 생산 출고는 3배 많이 나오겠네요. 흐뭇합니다. 

728x90
반응형