Excel

Rand 함수

별동산 2023. 7. 12. 08:57
반응형

1. 정의

0 이상 1 미만의 실수인 난수를 반환하는데, 워크시트를 계산할 때마다  새로운 난수가 반환되며, F9키를 눌러도 새로운 계산을 합니다.

 

1 이하가 아니라 미만인 점 주의해야 하며,

Random(무작위) 또는 Random Number(난수)를 생각하면 이해하기 쉽습니다.

 

2. 구문

가. rand()

괄호 안에 아무런 인수도 넣지 않습니다. Today 또는 Now함수의 경우와 같습니다.

 

나. rand()*(b-a)+a

a와 b사이의 난수를 구하려면 rand()*(b-a)+a 식으로 입력해야 합니다.

 

*b가 아니라 *(b-a)인 점 주의해야 하며,

마찬가지로 a이상 b미만의 난수를 발생시킵니다.

 

3. 사용 예

① rand()만 사용하는 경우

 

A1셀에 =rand()라고 입력하면 화면에는 0.070011이 보이는데, PC에 따라 값이 다릅니다. 

rand 함수

 

㉮ 이 상태에서 F9를 누르면 값이 계속 바뀝니다.

F9(재계산)키를 누를 때마다 Rand함수의 값이 바뀝니다.

 

㉯ 다른 셀에 수식을 작성한 후 엔터 키를 눌러도 A1셀의 값이 달라집니다.

 

㉰ A1셀 또는 A3셀에서 F2(편집) 키를 누르거나, 수식 입력 줄에 커서를 놓고 엔터 키를 눌러도 값이 바뀝니다.

 

아래는 A3셀에서 F2키를 누른 상태로 엔터 키를 누르면

 

값이 바뀝니다.

 

 

② 두 숫자 사이의 난수를 구하고자 하는 경우

 

80에서 100 사이의 난수를 발생시키려면

=rand()*(100-80)+80이라고 입력해야 합니다.

 

위와 같이 입력하면 80 이상 100 미만의 실수를 반환합니다.

아래와 같이 80 이상 100 미만인 91.49679가 구해졌습니다.

두 수 사이의 난수를 반환하는 rand 함수 식

 

F9를 계속 눌러 확인해 보기 바랍니다.

 

또는 C1셀에 =b2>=100라고 입력하고 F9키를 계속 눌러보기 바랍니다.

이 수식은 100 이상인 숫자라면 True를 반환하고, 아니면 False를 반환하라는 의미입니다.

당연히 False가 반환됩니다.

참과 거짓을 판단하는 수식

 

 

 

③ 실수가 아닌 정수를 반환하고자 하는 경우

 

정수를 반환하는 Int함수를 사용하거나,

Round함수를 사용하는 경우는 반올림할 자릿수로 0을 입력합니다.

 

정수를 반환하려면 =rand()만 사용하면 rand함수의 결괏값이 0 이상 1 미만의 실수이기 때문에 무조건 0일 것이므로,

 

두 수 사이의 난수를 구하도록 한 다음 int함수 등과 결합해야 합니다.

=INT(RAND()*40+20)라고 입력하면 20 이상 (20+40)=60 미만의 정수를 반환합니다.

Int 함수를 이용해 rand() 함수의 결과값을 정수를 반환하는 수식

 

아래는 60미만의 58이 구해진 화면입니다.

 

아래 수식 =ROUND(RAND()*40+20,0)는 Round함수를 이용해 정수를 구하는 수식입니다.

 

int함수와 round함수 안의 수식은 모두 RAND()*40+20로 같은데, 매번 다른 난수를 발생시키기 때문에 B2셀과 C2셀의 값이 다릅니다.

 

rand함수.xlsx
0.01MB

 

반응형

'Excel' 카테고리의 다른 글

RandArray 함수  (0) 2023.07.15
RandBetween 함수  (0) 2023.07.14
빠른 채우기 - 일정한 패턴에 따라 값을 분리하거나 합치기  (0) 2023.07.06
And, Or, Not 함수  (3) 2023.06.09
Vlookup함수 - 유사 일치  (0) 2023.06.08