1樓:古藤
用rand()函式/randbetween()函式和簡單公式來生成這5個隨機數即可。具體做法:
一、生成的隨機數含小數
1. 在單元格中輸入=rand(),回車後單元格即可返回一個隨機數字,其範圍大於0小於1。這是生成給定範圍內的隨機數字的基礎。
2. 生成制定範圍的隨機數的公式是:=a+rand()*(b-a),其中a為給定數字最小範圍,b是給定的最大範圍。
要生成大於5小於40的隨機數字,因為(40-5)*rand()返回結果是0到35之間,加上範圍的下限5就返回了5到40之間的數字。
3. 用上數公式生成前2個數,第3個數的上限則要計算後確定,即為40與(100—隨機數1-隨機數2)中的小者。第4個數的上限同樣要計算後確定,即為40與(100—隨機數1-隨機數2-隨機數3)中的小者。
第5個數等於100與其餘四個隨機數的差。
二、生成隨機整數:用randbetween()函式,該函式生成大於等於1小於等於100的隨機整數。語法:
=randbetween(範圍下限整數,範圍上限整數),結果返回包含上下限在內的整數。第1、2個隨機數直接生成,其餘隨機數的生成上限如一之3。
a1=randbetween(5,40)
b1=randbetween(5,40)
c1=randbetween(5,min(40,(100-sum(a1:b1))))
d1=randbetween(5,min(40,(100-sum(a1:c1))))
e1=100-sum(a1:d1)
其實完整的演算法中還要考慮前三個數的和小於等於20(後兩個數必須同為40或有一個要大於40)、前四個數小於60而第5個數要大於40等問題。嚴格的做法是要加入if判斷和條件調整。太複雜了!
2樓:匿名使用者
a1輸入
=round(rand()*35+5,0)回車;a2輸入
=round(rand()*(min(75-sum(a$1:a1)+row()*5,40)-5)+5,0)
回車並向下填充到a3;
a4輸入
=round(rand()*(min(75-sum(a$1:a3)+row()*5,40)-max((60-sum(a$1:a3)),5))+max(60-sum(a$1:
a3),5),0)
回車;a5輸入
=100-sum(a1:a4)
回車。按f9可更新數值。
3樓:匿名使用者
a1:d1都輸入公式:
=randbetween(5,40)
e1輸入公式:
=100-sum(a1:d1)
f1輸入公式:
=and(e1>=5,e1<=40)
每按一次f9鍵,如果f1單元格顯示true,則a1:e1的5個數即所求的。
或選定a1:f1,下拉。
則f列為true的那一行的a列到e列的5個數即所求的。
如何在excel中生成一個在一定範圍內的隨機數
4樓:匿名使用者
=randbetween(10,20)
表示隨機生成10到20之間的整數(適用於excel2007以上版)
5樓:山明智
使用randbetween函式
=randbetween(小數值,大數值)
如果需要小數,可以用rand函式生成一個0到1之間的數,乘以(大數-小數)的差,加上小的數,再保留到自己需要的小數位數就行了
6樓:匿名使用者
=randbetween(a,b)生成介於ab之間的整數隨機數。
7樓:匿名使用者
=randbetween(最小數,最大數)
8樓:樑奕聲卷燕
=rand()
生成0-1之間的隨機數(小數,包含0不包含1)=randbetween(1,10)
生成1-10之間(包含1和10,數字可以自己修改為自己要的範圍)的隨機數(整數)。
拓展思路:
=rand()*100
大於等於0但小於100的一個隨機數(帶小數)
9樓:塞寧禰雨
如果你是高版本的excel直接
=randbetween(1,100)
這樣的函式即可生成1到100之間的隨機數
如果你是低版本的就用
=int(1+rand()*99)
這樣的函式來生成
excel如何隨機生成幾個數,且這幾個數的和等於指定的一個數
10樓:
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之間包含兩位小數的隨機數,則可用下圖的公式實現:
11樓:綠衣人敲門
首先計算這個範圍的差值。這裡假設範圍值為50~100之內的隨機數開啟電子**,在所需要產隨機數的單元格內輸入如下公式:=rand()*(100-50)+50。
按確認鍵就可以生成在規定範圍內的隨機數了。
如果需要生成多個隨機數,那拖動單元格最下角小三角就可以啦。
12樓:水溫零下三度
lz 我利用rand()公式來實現。公式及顯示結果如下圖。
公式基於隨機數生成函式rand(),在0到1之間生成一個數字,floor()向下取整函式保證不會一次取滿100的值。
公式缺陷:
第一:會出現相同數字情況。
第二:有0值出現
13樓:匿名使用者
這個要vba嗎?在4個單元裡輸入=round(rand()*100/4,0),在另一個單元裡輸=100-sum(b2:e2),就滿足要求了
14樓:森林浴
sub aa()
for i = 1 to 4
cells(i, 1).formula = "=rounddown(rand() *(28-15)+15,0)"
next
cells(5, 1) = "=100-sum(a1:a4)"
end sub
這樣行不
15樓:匿名使用者
請試用以下**,m1的值用於設定數值範圍寬度,sum1用於設定指定和值,shu用於設定隨機數的數量;將**直接貼上到vba中即可執行。如有問題請反饋!
sub 巨集1()
dim sum1, m1 as double
dim shu as integer
sum1 = 100 '設定和值
m1 = 8 '設定資料寬度(最大-最小)
shu = 10 '設定資料個數
k = suiji(sum1, m1, shu)
end sub
function suiji(sum1, m1 as double, shu as integer)
dim r(), i, k, s, m2 as double
redim preserve r(shu)
if m1 <= 0 then end '判定m1值是否合理
m2 = (sum1 - m1 / 2 * shu) / shu
for i = 1 to shu - 1 '設定迴圈次數,用於取4個隨機數
r(i) = m2 + m1 * rnd() '設定一個隨機數值,範圍0-100
for k = 1 to i '用於測試是否有重複數值,如沒有必要可以去掉中間的if語句
s = s + r(k)
if r(i) = r(k) and i <> k then
i = i - 1
exit for
end if
next k
if s > sum1 then '判定是否超出指定和值
i = i - 1
goto dd
end if
if i > 1 then '用於測試前i個數值的和是否超標,如果超出就重新給最後一個數賦隨機值
kk = (m2 + m1) * (shu - i)
kf = m2 * (shu - i)
tt = sum1 - s
if tt >= kk or tt <= kf then
i = i - 1
goto dd
end if
end if
if i = shu - 1 then '給最後一個數賦值,並檢視是否與前面數值重複,如可以重複就去掉這個if和endif
r(shu) = sum1 - s
for k = 1 to shu - 1
if r(shu) < m2 or r(shu) = r(k) then '如果有與前值有重複的就重新給第shu-1數賦值
i = i - 1
goto dd
end if
next k
end if
dd: s = 0
if i >= 1 then cells(i, 1) = r(i) '如果i值有效給單元格進行賦值
next i
cells(shu, 1) = r(shu)
end function
excel怎麼在某一範圍內生成隨機數?
16樓:低調額低調額
1、excel中可以利用randbetween函式生成指定範圍內的隨機整數,如下圖所示,在b1:b4中生成1到100內的隨機數字,選擇區域,輸入公式如下:
2、按下ctrl+enter結束輸入,得到隨機數字如下所示:
3、按下f9,隨機數字會重新整理,如下圖所示:
4、如果要生成隨機小數,可以考慮在randbetween後面除以10的倍數,如下圖所示生成10到100之間的包含兩位小數的隨機數字:
5、得到結果如下圖所示,f9可以重新整理數字:
擴充套件資料
17樓:匿名使用者
excel隨機數函式
18樓: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不區分函式的大小寫)
如何讓excel生成隨機數,excel怎麼在某一範圍內生成隨機數?
千秋遐想 excel隨機數函式 洋老師辦公教程 首先輸入等於randbetween 函式,然後輸入需要生成的欄位,在輸入需要結束的欄位,按回車確定,在填充公式,這樣就能批量生成隨機數字。 公式上有如下兩種 1 rand 無引數。生成0 1間的隨機數。該種操作如果想實現 a,b 之間的隨機數,則使用公...
Excel怎麼根據日期規則自動生成表
比如要生成2015年1月1日起的日期,則可以在單元格寫入公式 date 2015,1,row a1 再下拉填充形成日期序列 date 返回代表特定日期的序列號。如果在輸入函式前,單元格格式為 常規 則結果將設為日期格式。語法date year,month,day year 引數 year 可以為一到...
年數總和法是怎麼計提折舊的,年數總和法計提折舊公式 15是什麼意思
假面 年數總和法 年折舊額 折舊基數 逐年遞減的折舊率 原值 預計淨殘值 尚可使用的年限 1 2 n 舉一個簡單的例子吧 2007年12月,長江公司購入一臺裝置,當月投入使用。該裝置的原值為158000元,預計使用年限為5年,預計淨殘值為8000元。第一年年折舊額 158000 8000 5 1 2...