Excel组合多组项目

时间:2015-01-13 07:42:39

标签: excel combinations permutation

我正在寻找一种简单的方法来列出excel中三组项目的所有可能组合。

例如,采取以下三组项目,每个项目在其自己的单元格中:

(meals) pizza, pasta, lasagne    
(drinks) wine, beer, water    
(dessert) ice, fruits

现在我想列出所有可能的组合,每个组合都在自己的行中,如

pizza, wine, ice
pasta, wine, ice
lasagne, wine, ice
pizza, wine, fruits
...
lasagne, water, fruits

订购并不重要。

是否有任何预定义功能?

1 个答案:

答案 0 :(得分:2)

将项目放在前三列中的工作表中,如下所示     A B C pizza wine ice pasta beer fruits lasagne water

然后,您可以使用以下公式获得F,G,H中的组合。

F1:
    =IF(ROW()-ROW($F$1)+1<=COUNTA(A:A)*COUNTA(B:B)*COUNTA(C:C), INDEX(A:A,INT((ROW()-ROW($F$1))/(COUNTA(B:B)*COUNTA(C:C))+1)), "")

G1:
    =IF(ROW()-ROW($F$1)+1<=COUNTA(A:A)*COUNTA(B:B)*COUNTA(C:C), INDEX(B:B,MOD(ROW()-ROW($F$1),COUNTA(B:B))+1), "")

H1:
=IF(ROW()-ROW($F$1)+1<=COUNTA(A:A)*COUNTA(B:B)*COUNTA(C:C), INDEX(C:C,MOD(ROW()-ROW($F$1),COUNTA(C:C))+1), "")

拉下单元格直到值为空。然后,您可能希望使用=IF(F1<>"", F1 & ", " & G1& ", " & H1, "")

将结果合并到第一列