excel中如何生成指定數量的隨機數

時間 2021-06-26 18:30:24

1樓:退休畫線工

因為隨機數函式是一個易失性函式,所以正如題主所說,生成的隨機數會在每次開啟檔案時重新生成。其實,不只是開啟檔案時,而是工作表中有任何操作,如輸入資料後按回車鍵確定、篩選、排序按f9重新計算等,隨機數都會重新生成。

要使隨機函式生成的隨機數不再發生變化,必須在公式中設定單元格在一定的條件下等於單元格本身,這就必須開啟excel的迭代計算(即excel的迴圈引用)。所以要達到題主的目的,需要按如下步驟來做:

在選項的公式選項卡中,把“啟用迭代計算”打上對勾後確定,以啟用迭代。

假設需要生成的隨機數在1~10之間,在b2中輸入公式:

=if($a1=""," ",if(column()-1>$a1,"",if(b2=" ",randbetween(1,10),b2)))

右拉到若干個單元格(單元格個數大於或等於a1中可能輸入的最大數字)

現在因為a1中沒有輸入內容,第1個if為真,輸入公式的單元格顯示為空(注意空是一個空格——英文雙引號中輸入了一空格)

當在a1中輸入數字時,第1個if條件為假,則執行第2個if,假設輸入的數字是5,在b2~f2(不是題主所說的e2)中,第2個if為假,執行第3個if。顯然第3個if為真空,因為原來已賦值一個空格,於是生成一個1~10的隨機數字;而在g2以後的單元格中,因為前面的數字個數已與a1相同,列數字-1後大於a1,所第3個if條件為真,取空值(雙引號中沒內容——單元格顯示為沒空格的空)。

再來分析b2單元格,當工作表中有操作時,易失性函式會發生變化,但公式中第3個if的條件為假——b2單元格已有數字,不是一個空格,所取第3引數,即取b2值——也就是已取得的隨機數——不再變化。這個b2是引用單元格本身——這就是excel中的迴圈引用——所以輸入公式前要進行步驟1的設定——啟用迭代計算。c2~f2所有已取得的數字的單元格同樣不再發生變化。

要重新生成隨機數時,只要刪除a1中的內容,使第2行填充了公式的單元格重新初始化——取得一個空格,再在a1中輸入新的數字即可。

2樓:雲南新華電腦學校

1、開啟excel,假設要生成指定範圍最小值a至指定範圍最大值b之間的隨機數,利用的公式原理是:rand()*(b-a)+a。

2、以“a=2,b=10”為例隨機生成2至10之間的隨機數,選中單元格,鍵入“rand()*(10-2)+2”。

3、之後按回車鍵即可。rand函式每次生成的都是隨機數,通過上述方法即可生成指定範圍的隨機數。

3樓:匿名使用者

用rand()函式可實現0到1之間的隨機小數,如果要生成隨機整數的話就需要用randbetween()函式,格式為:randbetween(1,100):生成1到100的隨機整數。

如果還要知道其它的,你可以查下這二個函式的具體用法,希望你幫到你。

4樓:oppo手機

rand()會產生0~1之間的隨機小數。小數位數有15位之多。

randbetween(上值,下值)會產生有上值和下值之間的隨機整數。

按f9鍵可以刷心。

5樓:雲南新華電腦學校

1、excel中可以利用randbetween函式生成指定範圍內的隨機整數,如下圖所示,在b1:b4中生成1到100內的隨機數字,選擇區域,輸入公式。

2、按下ctrl+enter結束輸入,得到隨機數字。

3、按下f9,隨機數字會重新整理。

4、如果要生成隨機小數,可以考慮在randbetween後面除以10的倍數。

5、得到結果,f9可以重新整理數字。

望採納,謝謝!

6樓:匿名使用者

拖拉多大區域就有多少個

excel怎麼在某一範圍內生成隨機數?

7樓:低調額低調額

1、excel中可以利用randbetween函式生成指定範圍內的隨機整數,如下圖所示,在b1:b4中生成1到100內的隨機數字,選擇區域,輸入公式如下:

2、按下ctrl+enter結束輸入,得到隨機數字如下所示:

3、按下f9,隨機數字會重新整理,如下圖所示:

4、如果要生成隨機小數,可以考慮在randbetween後面除以10的倍數,如下圖所示生成10到100之間的包含兩位小數的隨機數字:

5、得到結果如下圖所示,f9可以重新整理數字:

擴充套件資料

8樓:匿名使用者

excel隨機數函式

9樓:solo獨行者

那個標準答案不夠6,我來個通用的方法,大家可以舉一反三

其實關鍵就是一個rand()函式,用它生成0-1的隨機數(帶小數),然後就可以起飛了:

比如要0-5之間的隨機數,那就是=rand()*5,要0-10就是=rand()*10;

要1-5,那就再加一個加法,=rand()*4+1,要1-10就=rand()*9+1;

如果要求是整數,其實可以不用randbetween,用round(rand(),0),比如整數1-5,可以=round(rand()*4+1,0)

下面有個人希望得到正5到正10以及負5到負10的,也有辦法,可以=round((randbetween(1,2)*2-3)*(rand()*5+5),0)(我直接從我excel裡複製的,所以就大寫了,excel不區分函式的大小寫)

10樓:匿名使用者

=rand()

生成0-1之間的隨機數(小數,包含0不包含1)=randbetween(1,10)

生成1-10之間(包含1和10,數字可以自己修改為自己要的範圍)的隨機數(整數)。

拓展思路:

=rand()*100 大於等於0但小於100的一個隨機數(帶小數)

11樓:難堪

開啟excel,在excel單元格類輸入函式=rand(),按enter鍵後,就得到0-1之間的一個隨機數。

在excel單元格類輸入函式=randbetween(),填入區間上下限,例如1-100,按enter鍵後,就得到,1-100之間的一個隨機數。

12樓:本本經銷商

可以直接使用randbetween函式生成一定範圍內的隨機數。

可以使用rand函結合其他函式來生成一定範圍內的隨機數。

randbetween【語法】

randbetween(bottom,top)

bottom引數: randbetween將返回的最小整數。

top引數: randbetween將返回的最大整數。

示例:=randbetween(1,100)

大於等於1小於等於100的一個隨機整數(變數)

=randbetween(-1,1)

大於等於-1小於等於1的一個隨機整數(變數)

注意:randbetween函式只會生成隨機整數。如需要隨機小數可結合rand函式來使用。

2003版以上的excel中,直接在單元格輸入=rand()

得到大於等於0,小於1的隨機數

其他生成方法示例:

生成a與b之間的隨機數字(a≤隨機數在第一個格子中輸入:=rand()*(b-a)+a

如,生成1到10之間的隨機數字,輸入:=rand()*9+1

其餘數字,將滑鼠置於該格子右下角,變為十字時,向下拖拉即可。

生成a與b之間的隨機整數(a≤隨機數在第一個格子中輸入:=int(rand()*(b-a)+a)

如,生成1到10之間的隨機整數,輸入:=int(rand()*9+1)

其餘數字,將滑鼠置於該格子右下角,變為十字時,向下拖拉即可。

生成a與b之間的隨機數字(a≤隨機數≤b)

在第一個格子中輸入:=rand()*(b-a+1)+a

如,生成1到100的隨機數字,輸入:=rand()*100+1

13樓:匿名使用者

產生-10到5之間的整數:=randbetween(-10,5) 產生-10到5之間的任意實數:=15*rand()-10

14樓:匿名使用者

就是專業帶出問題,裡邊是是指代數生成了基礎。

15樓:匿名使用者

兄弟:非常簡單用到rnd函式留下郵箱發給你可用vba編寫或直接資料rnd函式.

16樓:溜到被人舔

其實關鍵就是一個rand()函式,用它生成0-1的隨機數(帶小數),然後就可以起飛了:

比如要0-5之間的隨機數,那就是=rand()*5,要0-10就是=rand()*10;

要1-5,那就再加一個加法,=rand()*4+1,要1-10就=rand()*9+1;

如果要求是整數,其實可以不用randbetween,用round(rand(),0),比如整數1-5,可以=round(rand()*4+1,0)

下面有個人希望得到正5到正10以及負5到負10的,也有辦法,可以=round((randbetween(1,2)*2-3)*(rand()*5+5),0)(我直接從我excel裡複製的,所以就大寫了,excel不區分函式的大小寫)

excel如何隨機生成幾個數,且這幾個數的和等於指定的一個數

17樓:

1.首先介紹一下如何用rand()函式來生成隨機數(同時返回多個值時是不重複的)。

如下圖所示,在單元格中輸入=rand(),回車後單元格即返回了一個隨機數字。

2.rand()函式返回的隨機數字的範圍是大於0小於1。因此,也可以用它做基礎來生成給定範圍內的隨機數字。

3.生成制定範圍的隨機數方法是這樣的,假設給定數字範圍最小是a,最大是b,公式是:

=a+rand()*(b-a)。

舉例來說,要生成大於60小於100的隨機數字,因為(100-60)*rand()返回結果是0到40之間,加上範圍的下限60就返回了60到100之間的數字。

4.上面rand()函式返回的0到1之間的隨機小數,如果要生成隨機整數的話就需要用randbetween()函式了,如下圖該函式生成大於等於1小於等於100的隨機整數。

這個函式的語法是這樣的:=randbetween(範圍下限整數,範圍上限整數),結果返回包含上下限在內的整數。注意:上限和下限也可以不是整數,並且可以是負數。

5.rand()和randbetween()是生成隨機數的基礎函式,也可以靈活變通。比如說要生成0.01至1之間包含兩位小數的隨機數,則可用下圖的公式實現:

18樓:綠衣人敲門

首先計算這個範圍的差值。這裡假設範圍值為50~100之內的隨機數開啟電子**,在所需要產隨機數的單元格內輸入如下公式:=rand()*(100-50)+50。

按確認鍵就可以生成在規定範圍內的隨機數了。

如果需要生成多個隨機數,那拖動單元格最下角小三角就可以啦。

EXCEL題庫如何隨機篩選選指定數量的題目

來自朱家尖積極進取的大平原狼 是每章隨機抽5道題嗎?假定原資料在abc三列中,在e1輸入 第一章題號 在f1輸入 第二章題號 在g1輸入 第三章題號 然後在e2單元格輸入公式 small if countif e 1 e1,row 1 30 99,row 1 30 1 int rand 32 row...

如何在EXCEL中輸入指定數字,然後用公式做出為一組的隨機數字組合

9個數字放在a1 a9,共有234個不同的組合,用vba可求出全部不重複的各可能結果,放在b在b1開始 sub 巨集1 l 1 for i 1 to 7 for j 2 to 8 for k 3 to 9 if not i j or i k or j k then cells l,2 cells i...

如何合併兩個excel中的指定資料?如何讓excel視窗同時在前臺顯示

比如第一個檔案的工作表a列為姓名,b列為學號。你在b2輸入 vlookup a2,c documents and settings feiqiang 桌面 book1.xls sheet1 m n,2,false 以上c documents and settings feiqiang 桌面 為檔案二...