[算表] 符合一定規則的亂數排序

看板Office作者 (小黃)時間15年前 (2011/04/11 19:18), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
軟體: excel 版本: 2010 我有一個 35列 5行 的矩陣 如下所示 C D E F G H I J K L M 3 4 5 6 . . 37 每一行的資料都是 1~35的亂數,每一列加總都要是90 我參考版上有關亂數的資料 B2 =1 C1:G35 = rand() H38 =sum(H3:H37) 再複製公式到 H38:L38 M3 =sum(H3:L3) 再複製公式到 M3:M37 H3 =IF($B$2,IF($M3+H$38=720,H3,RANK(C3,C$3:C$37))) 再複製公式到 H3:L37 M2 =IF(COUNTIF(M3:M37,90)=35,"成功","未成功") 最後再用VBA寫個按鈕,讓他自動更新到跑出結果 Sub Macro() Application.ScreenUpdating = False Do While Range("M2").Value = "未成功" Calculate Loop Application.ScreenUpdating = True End Sub 我用過同樣的邏輯在一個5列 3行的矩陣中測過,可以算出答案 但是在原本 35列 5行 的case要跑非常久 我覺得可能是因為沒有甚麼特別演算法, 就是讓他靠運氣跑到一組剛好符合條件的答案 不曉得版上的先進有沒有更好的方法解決這個問題呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.80.253
文章代碼(AID): #1DekDiFY (Office)
文章代碼(AID): #1DekDiFY (Office)