Excel 使用所有组合创建表格

Sup*_*ale 12 microsoft-excel

假设我有 3 列带标签

  1. A B C D
  2. abcde
  3. 1 2 3 4 5 6 7 8 9 10

有没有一种快速简便的方法来创建一个包含所有排列的空表?IE

  • A - 一个 - 1
  • A - A - 2
  • ....
  • D - e - 10

Sco*_*ner 10

你可以用一个公式来做到这一点:

=IFERROR(INDEX($A$1:$A$4,INT((ROW(1:1)-1)/((COUNTA(B:B)*(COUNTA(C:C)))))+1)&" - "&INDEX(B:B,MOD(INT((ROW(1:1)-1)/COUNTA(C:C)),COUNTA(B:B))+1)&" - "&INDEX(C:C,MOD((ROW(1:1)-1),COUNTA(C:C))+1),"")
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明


Gar*_*ent 7

运行这个简短的宏:

Sub marine()
    Dim i As Long, j As Long, k As Long, N As Long

    N = 1
    For i = 1 To 4
        For j = 1 To 5
            For k = 1 To 10
                Cells(N, 4) = Cells(i, 1) & "-" & Cells(j, 2) & "-" & Cells(k, 3)
                N = N + 1
            Next k
        Next j
    Next i
End Sub
Run Code Online (Sandbox Code Playgroud)

将生成一列所需的 200 个组合:

在此处输入图片说明