Excel如何生成指定年份隨機(jī)日期:RAND和RANDBETWEEN應(yīng)用技巧
編按:在Excel里有兩個(gè)專門生成隨機(jī)數(shù)的函數(shù):RAND和RANDBETWEEN。今天通過幾個(gè)示例來和大家分享一下隨機(jī)數(shù)的妙用。

示例1:生成指定年份的隨機(jī)日期
在Excel中,日期的本質(zhì)是數(shù)值,因此可以使用隨機(jī)數(shù)來生成隨機(jī)日期。
有三個(gè)公式都可以實(shí)現(xiàn)這個(gè)功能。
公式1:=RANDBETWEEN(DATE($A$2,1,1),DATE($A$2,12,31))

公式1中設(shè)置2019年1月1日作為隨機(jī)整數(shù)的下限,設(shè)置2019年12月31日作為隨機(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”,意思是2013年1月1日。同理A2+1&-1得到字符串“2014-1”,再將字符串-1,得到2013年12月31日。按照運(yùn)算符的運(yùn)算順序,+、-號(hào)優(yōu)先于&號(hào),所以(A2+1&-1)需要加括號(hào)。這個(gè)公式對(duì)于Excel公式的計(jì)算順序和日期原理要比較熟悉,不然就不太好理解。
示例2:生成一組不重復(fù)的隨機(jī)整數(shù)
有兩種方法可以實(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)得到每個(gè)隨機(jī)數(shù)的排名,這樣就間接得到了一組不重復(fù)的隨機(jī)整數(shù)。

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

如果要生成的隨機(jī)整數(shù)不是10個(gè),就需要修改箭頭所指的三個(gè)地方。
這個(gè)公式的原理比較復(fù)雜,就不贅述了。
示例3:生成一組隨機(jī)的英文字母
思路是使用隨機(jī)函數(shù)產(chǎn)生字母的數(shù)字代碼,然后使用CHAR函數(shù)將其全部轉(zhuǎn)換為英文字母。
首先必須知道大寫英文字母的數(shù)字代碼為65~90,小寫英文字母的數(shù)字代碼為97~122,使用RANDBETWEEN函數(shù)產(chǎn)生65~90的隨機(jī)整數(shù)。
然后使用INT(RAND()*2)*32隨機(jī)返回0或32,目的是實(shí)現(xiàn)大小寫字母均有50%的出現(xiàn)概率。
最后使用CHAR函數(shù)將數(shù)字代碼轉(zhuǎn)換為英文字母。
最終的公式是:=CHAR(INT(RAND()*2)*32+RANDBETWEEN(65,90))

示例4:利用隨機(jī)數(shù)制作加減乘除練習(xí)題
需要5個(gè)步驟:
步驟?1:制作題目的編號(hào),使用?TEXT?函數(shù)將編號(hào)設(shè)置為帶括號(hào)的數(shù)字。
公式為=TEXT(ROW(A1),"(0)")
步驟?2:制作隨機(jī)的加、減、乘、除符號(hào)。
公式為=MID("+-×÷",RANDBETWEEN(1,4),1)
步驟?3?:首先判斷?C?列是否為乘或除符號(hào),如果是,則產(chǎn)生?1~10?的隨機(jī)整數(shù),否則產(chǎn)生?0~99?的隨機(jī)整數(shù)。
公式為:=IF(OR(C3={"×";"÷"}),INT(SQRT(RAND()*99))+1,RANDBETWEEN(0,99))
步驟?4?:使用?FIND?函數(shù)查詢加、減、乘、除符號(hào)的位置,通過?CHOOSE?函數(shù)選擇對(duì)應(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:最后一列輸入=即可,完成后效果見下圖。

特別說明:這個(gè)例子只是為了學(xué)習(xí)公式函數(shù)之用,并不一定符合實(shí)際使用的要求。
本文配套的練習(xí)課件請(qǐng)加入QQ群:902294808下載。
做Excel高手,快速提升工作效率,部落窩教育《一周Excel直通車》視頻和《Excel極速貫通班》直播課全心為你!
相關(guān)推薦:
將excel中的數(shù)據(jù)按照指定數(shù)量進(jìn)行重復(fù),非得用VBA才能實(shí)現(xiàn)嗎?
如何在特定位置批量插入空行等12種實(shí)用辦公技巧
4種刪除excel重復(fù)值的小妙招,速收藏
Power Query的數(shù)據(jù)替換技巧比Excel函數(shù)更萬能!
版權(quán)申明:
本文作者老菜鳥;同時(shí)部落窩教育享有專有使用權(quán)。若需轉(zhuǎn)載請(qǐng)聯(lián)系部落窩教育。