请问用excel怎么做排列组合? 如:第一列,数字分别为1,2;第二列,数字分别为,2.3.4等。

要生成如下顺序的排列组合:12;13,14;22,23,24,非常感谢

用VBA宏做这个还简单些,在工作表底部标签上点鼠标右键,选“查看代码”,会弹出VBA窗口,把下面代码粘贴进去,然后回到EXCEL窗口,执行这个“排列”宏就能得到想要的结果。

Sub 排列()

xa = Range("a65536").End(xlUp).Row

xb = Range("b65536").End(xlUp).Row

s = 1

Columns("C:C").ClearContents

For i = 1 To xa

    For j = 1 To xb

        Cells(s, 3) = Cells(i, 1) & Cells(j, 2) '在C列显示排列结果

        s = s + 1

    Next

Next

MsgBox "共产生" & s - 1 & "个组合"

End Sub



温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-06-18

看附件,麻烦采纳一下 A1&B1:B3 A2&B1:B3

追问

非常感谢你帮忙回答,上面是我举的例子,我真正做的话,比这些数字更多,有没有什么简单的函数之类的?就是一个设置可以把所有的这些排列显示出来?

追答

=A1:A2&TRANSPOSE(B1:B4)

用这个函数

数组的运算概念   {1,2}+{1,2}={2,4}

                            {1,2}+{1;2}={}

           逗号代表同一行的第二个数 分号代表同一列的第二个数

       1     2  +        1

                           2

EXCEL会总动补全  空位  变成   1  2    +   1  1    =       2  3

                                                  1  2  +    2  2              3  4   

这样就做到了让每个元素都相加一遍

 

相似回答