excel數字排列組合公式寫法介紹
文章通過一個實例來介紹數字排列組合公式的寫法,感興趣的朋友對排列組合公式稍微變通實現類似的需求。
需要排列組合公式的,多是對數字感興趣的朋友,喜歡對數字排列組合。
本文介紹通過excel中編寫VBA代碼,掌握一些規律和算法來寫排列組合公式。
數字排列組合公式的思路,可以這樣理解:從n個不同元素中,任取m(m≤n)個元素按照一定的順序排成一列。
下面通過一個實例來講解如何通過排列組合公式完成數字排列組合。
比如從"9876543"中任意取5個數來進行排列組合,方法是:
新建一個工作表,按ALT+F11,打開VBE器,插入——模塊,在右邊代碼框復制下面的代碼,然后單擊工具欄的“運行”命令,然后切換到工作表中,可以看見A列已經根據排列組合公式自動生成了所需要的所有數字排列組合。
Sub 排列組合公式()Dim II%, I%, J%, K%, L%, M%Dim Srt1$, Srt2$, Srt3$, Srt4$, Srt5$Dim TStr1$, TStr2$, TStr3$, TStr4$Dim t, arr()Const FullStr = "9876543"t = TimerII = 0For I = 1 To 7Srt1 = Mid(FullStr, I, 1)TStr1 = Replace(FullStr, Srt1, "")For J = 1 To 6Srt2 = Mid(TStr1, J, 1)TStr2 = Replace(TStr1, Srt2, "")For K = 1 To 5Srt3 = Mid(TStr2, K, 1)TStr3 = Replace(TStr2, Srt3, "")For L = 1 To 4Srt4 = Mid(TStr3, L, 1)TStr4 = Replace(TStr3, Srt4, "")For M = 1 To 3Srt5 = Mid(TStr3, M, 1)II = II + 1ReDim Preserve arr(1 To II)arr(II) = Srt1 & Srt2 & Srt3 & Srt4 & Srt5NextNextNextNextNextRange("A1:A" & II) = Application.Transpose(arr)End Sub