怎么用excel显示排列组合所有结果的问题。

如图所示,我想让1234这四个数字组成的所有四位数都显示出来,应该是24种吧,是这种的1234,1324……而不是1111,2222…1122…2233……
当然,都显示在E列里。

1.首先,看一下原始数据。A1和A2是两个主等级,B1:B4是四个附属等级,每个主等级都有四个附属等级。需要在C列显示出所有的组合情况。

2.考虑用INDEX函数来实现这个功能。首先来看一下INDEX第二参数如何做。

双击C1,输入公式=INT((ROW(A1)-1)/4)+1,下拉可以看到1出现了4次,2也出现了4次,这是因为B列数据4次以后就需要在A列偏移一个单元格。

3.外面嵌套INDEX函数,输入:

=INDEX($A$1:$A$2,INT((ROW(A1)-1)/4)+1)

下拉后就可以看到“一等”和“二等”各出现了4次。

4.第二列数据和第一列数据不一样,我们需要循环引用B列的数据。也就是让1,2,3,4循环出现。所以考虑用MOD函数。双击D1,输入公式:

=MOD(ROW(A1)-1,4)+1

下拉后可以看到如下图的效果:

5.同样,外层嵌套INDEX函数,可以循环获得B列的数据,4行一遍:

=INDEX($B$1:$B$4,MOD(ROW(A1)-1,4)+1)

6.最后,把公式合并在一个单元格中,就生成了最终结果组合。

=INDEX($A$1:$A$2,INT((ROW(A1)-1)/4)+1)&INDEX($B$1:$B$4,MOD(ROW(A1)-1,4)+1)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-03-29

在E1输入以下公式,然后向下填充到E64单元格

=CHOOSE(MOD(INT((ROW(A1)-1)/16),4)+1,1,2,3,4)&CHOOSE(MOD(INT((ROW(A1)-1)/8),4)+1,1,2,3,4)&CHOOSE(MOD(INT((ROW(A1)-1)/4),4)+1,1,2,3,4)&CHOOSE(MOD(ROW(A1)-1,4)+1,1,2,3,4)

 

本回答被提问者和网友采纳
相似回答