1樓:冰冰love爽爽
你說的是 一個**裡面已經有120個三位數了, 然後再 隨意寫 5個數字,在這5個數字中再隨機選3個出來組成一個三位數,如果組成的3位數在你已經設定的120個裡面,就給一個提示是麼? 如果是這樣 用 vba 可以實現。 三個 for迴圈,對應的分別是 百位 十位和個位,組成一個數後就是去查詢一下是不是在那120個裡面。
excel如何做排列組合?
2樓:匿名使用者
用vba:
sub zuhe()
r = 1
for a = 0 to 7
for b = a + 1 to 8
for c = b + 1 to 9
cells(r, 1) = "'" & a & b & cr = r + 1
next
next
next
end sub
sub pailie()
r = 1
for a = 0 to 9
for b = 0 to 9
for c = 0 to 9
if a <> b and a <> c and b <> c then
cells(r, 2) = "'" & a & b & cr = r + 1
end if
next
next
next
end sub
3樓:匿名使用者
要用vba才行,公式做不到
新建模組
sub arrange()
dim a, b, c, d, e as integerd = 1
for a = 0 to 9
for b = 0 to 9
for c = 0 to 9
if a <> b and b <> c and a <> c then
cells(d, 1) = a & b & cd = d + 1
end if
next c
next b
next a
end sub
sub assemble()
dim a, b, c, d, e as integerd = 1
for a = 0 to 9
for b = 0 to 9
if b > a then
for c = 0 to 9
if c > b then
cells(d, 2) = a & b & cd = d + 1
end if
next c
end if
next b
next a
end sub
4樓:哀微浮柔婉
何必用巨集呢?用隨機函式,你按一下f9就會自動生成新一列數d,e,f中分別輸入
=offset(a1,int(rand()*6)-1,0)=offset(b1,int(rand()*8)-1,0)=offset(c1,int(rand()*6)-1,0)剛測試了下,不知道怎麼用rand的時候總是偶爾會出點問題,修改了下=offset(a1,int(randbetween(1,5))-1,0)
=offset(b1,int(randbetween(1,7))-1,0)
=offset(c1,int(randbetween(1,5))-1,0)
excel 排列組合公式?
5樓:有錢哥哥
excel有排列組合公式,permut為排列函式,combin為組合函式。
1、電腦開啟excel**,輸入組合函式=combin(50,3)。
2、回車就會得到19600。
3、輸入排列公式=permut(50,3)/permut(3,3)。
4、回車就可以了。
6樓:匿名使用者
=combin(50,3)
7樓:匿名使用者
permut(50,3)
8樓:
=permut(50,3)/permut(3,3)
..........
查一下幫助吧,只找到了排列的,沒找到組合的
9樓:終清韻毛霽
如果a列的1在a1,c1輸入公式:
下拉填充8個單元格即可按照提問者要求排列。
10樓:沈田談安順
private
subcommandbutton1_click()
dimarr
range("a1:q65536").clearcontents
arr=
[a1:q65536]l=
1m=1
fori1=1
to28
fori2=i1
+1to29
fori3=i2
+1to30
fori4=i3
+1to31
fori5=i4
+1to32
fori6=i5
+1to33
arr(l,m)=
i1&""
&i2&"
"&i3&
""&i4
&""&
i5&""
&i6l=
l+1if
l=65537
thenm=
m+1l
=1endif
next
i6next
i5next
i4next
i3next
i2next
i1forl=
1to10form=
1to17cells(l,m)=
arr(l,
m)next
mnext
l'[a1:q65536]
=arr
endsub
(33*32*31*30*29*28)/(6*5*4*3*2*1)=1107568
所以共有1107568個不同數字的組合。
我在計算時,把每個組合的6個不相同的數字,各用一個空格符分隔,存放在一個單元格中。
實際運算時間僅10秒鐘即可完成,主要時間將花費在填充單元格上,全部填滿約半小時。
因為1107568=65536*16+58992
所以全部填滿後a-p會全部填滿,q列填到第58992行。
[a1:q65536]
=arr語句用來填充單元格,因執行時費時較多,我暫時把它註釋掉了。代之以如下語句用來顯示前10行資料,作示範。
forl=1
to10
form=1
to17
cells(l,m)=
arr(l,
m)next
mnextl
11樓:香睿力亦玉
這個是從全部隨機選5個數字的公式:
=index($a$1:$e$7,choose(rand()*7+1,1,2,3,4,5,6,7),choose(int(rand()*10/2)+1,1,2,3,4,5))
希望對你有幫助~~
12樓:法哲瀚麻娥
=offset($a$2,int((row()-2)/3),0,,)&"-"
註明:-2是因為我公式從第二行開始,你根據自己的更改。兩處。
$a$2、$b$2是1所在的位置,列向的。如果橫向,offset裡的逗號位置更改。
&"-"
連結符號,你可以刪去。
用excel做排列組合怎麼做
13樓:姓王的
這麼複雜的問題,只懸賞15分,給你寫個**就不錯了,還要圖示解釋,真是想得美呀。
如果只寫**把符合條件的組合列到**中,我可以試試。
如果只**都行,就追問一下,我幫你寫**
用excel做字母數字的排列組合
可以使用巨集來解決生成。sub arrange dim my string as string my string 12 23 b2 33 aa 44 dim my arr 0 to 6 for i 0 to 6 my arr i split my string,i next dim my arra...
EXCEL四位數字的排列組合,excel中4個數字中3個數字任意排列組合公式是什麼?
我不懂車牌號碼是幾位數,與字母是怎樣排列的。如果你能告訴我這些,我可以給你做出來。你想要一個 bai這樣的隨機值,還du是所有的都羅列出來。如果zhi想都列出來,任意 dao單元格中輸入 text all if iserr find 4,row 1 9999 iseven right row 1 9...
數學如何做排列組合的題啊屢做屢錯 求解題思想
一 排列組合 解題方法 先選再排 我想你應該先把兩個排列組合的大的公式搞懂,乘法和加法。乘法就是分步,加法就是分類。就是我說的你要怎麼分,是分步還是分類。關鍵看書啊,課本上的是基礎的,但是我是二期課改的,有些內容跳的太快了,剛開始我也覺得很難,但是多做就好了,我的竅門就是 先選再排 其實排列組合也和...