用EXCEL想隨機生成1列資料,超出某範圍的資料出現的概率為

2021-06-26 18:06:15 字數 5415 閱讀 6230

1樓:山桑弓

公式可為

=choose(match(rand(),),int(rand()*9),9+int(rand()*4))

下拉。這個公式是按照

0到8的數字在這1列中出現的機率是90%,9-12出現的概率是10%,該列資料中不得出現大於12的數字

這句話來做的。

其標題用excel想隨機生成1列資料,超出某範圍的資料出現的概率為5%,

與上面的意思有衝突,無法同時設定進去。

求取隨機值,一般可以考慮用rand函式,任意單元格中輸入=rand()  可以得到乙個0-1之間的隨機值,它可能等於0,不會等於1,修改它可以得到想要範圍的隨機數值,比如把它乘以9,再去除小數部分,可以得到0-8之間的值,int(rand()*9)    或變形為9+int(rand()*4)  可以得到9-12之間的隨機值。match(rand(),)   的意思是查詢rand在這個陣列中的位置,如果rand小於0.9,match函式返回1,如果大於等於0.

9返回2,因為rand在0-1之間隨機,所以match為1的可以性為90%,為2的可能性為10%,choose利用match來返回指定段數的函式,如果match為1,choose返回第三段即int(rand()*9)部分,如果為2,返回第四段即9+int(rand()*4)部分。

參照附件

2樓:

=if(mod(row(),10)=0,randbetween(9,12),randbetween(0,8))

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

3樓:低調額低調額

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

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

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

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

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

擴充套件資料

4樓:匿名使用者

excel隨機數函式

5樓: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不區分函式的大小寫)

6樓:匿名使用者

=rand()

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

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

拓展思路:

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

7樓:難堪

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

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

8樓:本本經銷商

可以直接使用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

9樓:匿名使用者

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

10樓:匿名使用者

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

11樓:匿名使用者

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

12樓:溜到被人舔

其實關鍵就是乙個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來自動生產隨機的在乙個範圍的數值,帶小數的

13樓:上鎖的的記憶

1、用randbetween函式生產乙個範圍內的隨機數值整數部分,公式:=randbetween(最小值,最大值);

2、用rand函式生產隨機數字(小數部分),公式=rand();

3、用round函式處理小數點位數,公式=round(數值,保留小數點後幾位有效數)

4、舉例:假設生成0到100之間的隨機數,保留小數點後2位有效數。整個公式為:

=round(randbetween(0,99)+rand(),2)

14樓:滕苑博

=round(rand()*3+48.5,1)然後填充這個函式到其它單元格即可

樓上的公式會跑到50.9

語法rand( )

註解若要生成 a 與 b 之間的隨機實數,請使用:

rand()*(b-a)+a

如果要使用函式 rand 生成一隨機數,並且使之不隨單元格計算而改變,可以在編輯欄中輸入「=rand()」,保持編輯狀態,然後按

f9,將公式永久性地改為隨機數。

所以你只要使用公式

=rand()*(51.5-48.5)+48.

5如果只要2為小數,其餘去除,那麼只要修改公式為=int((rand()*(51.5-48.5)+48.

5)*100)/100

15樓:桐蕙

randombetween(490,510)/10就足夠了,先以整數運算,在除以倍數,就會得到相應的隨機小數

16樓:匿名使用者

=int((rand()*(49.5-51.5)+51.5)*10)/10

公式中的49.5就是-2的結果,51.5是+1的結果

我是根據回答中的熱心網友提供的公式修改的

17樓:匿名使用者

randbetween 只能生成區間內的整數,不符合你的要求可以用這個

=round((rand()*(b-a)+a,1)b是你範圍的下限,a是你範圍的上限,生成隨機數後用round函式四捨五入,只保留一位小數。

18樓:匿名使用者

=randbetween(485,515)/10

該函式需要載入巨集。

19樓:博大精深

開心就好,想那麼多幹嘛呀,你說呢?

20樓:匿名使用者

=round(rand()*3+48,1)

21樓:學習就能進步

==randbetween(4820,5150)/100

excel 假如選擇數值在某一範圍,則顯示為某特定文字,怎麼設定?

22樓:好名全叫豬起了

=if(and(a1>0,a1<=10),"差",if(and(a1>10,a1<=20),"良",if(and(a1>20,a1<=30),"優","")))考慮到可能出現大於30,小於0的情況用上面公式

不考慮的話

=lookup(a1,,)

23樓:天雨下凡

如果條件不是很多,可以用if完成

你的例子中假設判斷條件在a1單元格,則在b1中輸入公式:

=if(a1<0,"",if(a1<=10,"差",if(a1<=20,"良",if(a1<=30,"優",""))))

24樓:匿名使用者

假如你的數值在a1單元格,公式如下:

=if(a1<=10,"差",if(a1<=20,"良",if(a1<=30,"優","大於30")))

25樓:匿名使用者

=if(and(a1<=30,a1>20),"優",if(and(a1<=20,a1>10),"良",if(and(a1<=10,a1>=0),"差","")))

EXCEL在一張表中隨機生成指定列的資料

在b1單元格裡面寫入公式 index a a,int rand 10 1 然後每按一次f9就重新隨機抽取一次。offset a 1,randbetween 1,countifs a a,1,1,excel怎麼在某一範圍內生成隨機數?1 excel中可以利用randbetween函式生成指定範圍內的隨...

用Python修改excel中一列資料

可以使用pandas庫,先讀取excel檔案,然後使用pandas庫來修改一列,然後寫入檔案即可。你可以考慮利用openpyxl,開啟需要操作的檔案,然後讀入對應列的資料,將資料放到字典裡面。同時開始寫輸出的列,如果字典裡面沒有資料的話,就順序加1,存在資料的話,就將字典的數輸出就好了。python...

怎樣用excel生成規定範圍內的隨機數

分享一bai下往上查 到的資料du,以供參考。rand 生 zhi成 rand 生成du0到1之間 的任意數zhi。rand b a,生成a到a b之間dao的任意數。randbetween a,b 生成a到b之間的整數。vba中可以使用 內rnd 函式,等 怎樣獲得在一定範圍內的隨機數?直接的方法...