二維碼 購物車
部落窩在線教育歡迎您!

如何生成指定年份的隨機(jī)日期? RAND和RANDBETWEEN很專業(yè)!

?

作者:老菜鳥來源:部落窩教育發(fā)布時間:2022-02-24 18:52:23點擊:3090

分享到:
0
收藏    收藏人氣:0人
版權(quán)說明: 原創(chuàng)作品,禁止轉(zhuǎn)載。

編按:

Excel里有兩個專門生成隨機(jī)數(shù)的函數(shù):RANDRANDBETWEEN。今天通過幾個示例來和大家分享一下隨機(jī)數(shù)的妙用。

 

示例1:生成指定年份的隨機(jī)日期

Excel中,日期的本質(zhì)是數(shù)值,因此可以使用隨機(jī)數(shù)來生成隨機(jī)日期。

有三個公式都可以實現(xiàn)這個功能。

公式1=RANDBETWEEN(DATE($A$2,1,1),DATE($A$2,12,31))

 

 

公式1中設(shè)置201911日作為隨機(jī)整數(shù)的下限,設(shè)置20191231日作為隨機(jī)

整數(shù)的上限,然后利用RANDBETWEEN函數(shù)產(chǎn)生隨機(jī)整數(shù),即可得到2013年的隨機(jī)日期。

公式2=DATE($A$2,1,RANDBETWEEN(1,365))

 

 

公式2將隨機(jī)數(shù)作為date函數(shù)的第三參數(shù),也可以生成指定年份的隨機(jī)日期。需要注意平年和閏年的差別,平年為365天,閏年為366天。

公式3=RANDBETWEEN(A$2&-1,(A$2+1&-1)-1)

 

 

公式3利用文本合并符&A2單元格的年份與-1合并,得到字符串“2013-1”,意思是201311日。同理A2+1&-1得到字符串“2014-1”,再將字符串-1,得到20131231日。按照運算符的運算順序,+、-號優(yōu)先于&號,所以(A2+1&-1)需要加括號。這個公式對于Excel公式的計算順序和日期原理要比較熟悉,不然就不太好理解。

 

示例2:生成一組不重復(fù)的隨機(jī)整數(shù)

有兩種方法可以實現(xiàn)這種功能,方法1使用輔助列,方法2使用數(shù)組公式。

方法1:使用RAND函數(shù)作輔助列,用RANK函數(shù)排序生成不重復(fù)的隨機(jī)整數(shù)。

B列使用公式=RAND()得到一組隨機(jī)數(shù),C列使用公式=RANK(B2,$B$2:$B$13)得到每個隨機(jī)數(shù)的排名,這樣就間接得到了一組不重復(fù)的隨機(jī)整數(shù)。

 

圖形用戶界面, 應(yīng)用程序, 表格, Excel
描述已自動生成

 

方法2:使用數(shù)組公式=SMALL(IF(COUNTIF($E$1:E1,ROW($1:$10))=0,ROW($1:$10)),INT(RAND()*(11-ROW(1:1))+1))生成10個不重復(fù)的隨機(jī)整數(shù)。

 

 

如果要生成的隨機(jī)整數(shù)不是10個,就需要修改箭頭所指的三個地方。

這個公式的原理比較復(fù)雜,就不贅述了。

 

示例3:生成一組隨機(jī)的英文字母

 

思路是使用隨機(jī)函數(shù)產(chǎn)生字母的數(shù)字代碼,然后使用CHAR函數(shù)將其全部轉(zhuǎn)換為英文字母。

首先必須知道大寫英文字母的數(shù)字代碼為6590,小寫英文字母的數(shù)字代碼為97122,使用RANDBETWEEN函數(shù)產(chǎn)生6590的隨機(jī)整數(shù)。

然后使用INT(RAND()*2)*32隨機(jī)返回032,目的是實現(xiàn)大小寫字母均有50%的出現(xiàn)概率。

最后使用CHAR函數(shù)將數(shù)字代碼轉(zhuǎn)換為英文字母。

最終的公式是:=CHAR(INT(RAND()*2)*32+RANDBETWEEN(65,90))

 

 

示例4:利用隨機(jī)數(shù)制作加減乘除練習(xí)題

 

需要5個步驟:

步驟 1:制作題目的編號,使用 TEXT 函數(shù)將編號設(shè)置為帶括號的數(shù)字。

公式為=TEXT(ROW(A1),"(0)")

步驟 2:制作隨機(jī)的加、減、乘、除符號。

公式為=MID("+-×÷",RANDBETWEEN(1,4),1)

步驟 3 :首先判斷 C 列是否為乘或除符號,如果是,則產(chǎn)生 110 的隨機(jī)整數(shù),否則產(chǎn)生 099 的隨機(jī)整數(shù)。

公式為:=IF(OR(C3={"×";"÷"}),INT(SQRT(RAND()*99))+1,RANDBETWEEN(0,99))

步驟 4 :使用 FIND 函數(shù)查詢加、減、乘、除符號的位置,通過 CHOOSE 函數(shù)選擇對應(yīng)的隨機(jī)數(shù)范圍。

公式為:

=CHOOSE(FIND(C3,"+-×÷"),RANDBETWEEN(0,99-D3),RANDBETWEEN(D3,99),RANDBETWEEN(0,INT(99/D3)),RANDBETWEEN(0,INT(99/D3))*D3)

步驟5:最后一列輸入=即可,完成后效果見下圖。

 

 

特別說明:這個例子只是為了學(xué)習(xí)公式函數(shù)之用,并不一定符合實際使用的要求。

 

本文配套的練習(xí)課件請加入QQ群:902294808下載。

Excel高手,快速提升工作效率,部落窩教育《一周Excel直通車》視頻和《Excel極速貫通班》直播課全心為你!

掃下方二維碼關(guān)注公眾號,可隨時隨地學(xué)習(xí)Excel

IMG_256

相關(guān)推薦:

將excel中的數(shù)據(jù)按照指定數(shù)量進(jìn)行重復(fù),非得用VBA才能實現(xiàn)嗎?

如何在特定位置批量插入空行等12種實用辦公技巧

4種刪除excel重復(fù)值的小妙招,速收藏

Power Query的數(shù)據(jù)替換技巧比Excel函數(shù)更萬能!

版權(quán)申明:

本文作者老菜鳥;同時部落窩教育享有專有使用權(quán)。若需轉(zhuǎn)載請聯(lián)系部落窩教育。