每天清晨六点,准时与您相约

  问题情境

  如下样表:

  需要把“级别“与“等级“的所有组合列出来,有三个级别、四个等级,所以组合的可能性有3*4=12种。

  我们来分步实现。

  第一步:级别重复四次

  公式:

  因为“级别”要重复四次,所以用INT((ROW(A1)-1)/4)。

  ROW(A1)随着公式向下填充,返回值自动变为1、2、3、4、5……,(ROW(A1)-1)/4返回0、1/4、2/4、3/4、4/4……,再用INT取整,返回值为0、0、0、0、1……,INT((ROW(A1)-1)/4)+1返回1、1、1、1、2……,INDEX($A$2:$A$4,INT((ROW(A1)-1)/4)+1)即返回$A$2:$A$4中的第1个、第1个、第1个、第1个、第2个……,即实现了每个级别重复四次。

  最后的错误值暂时不管。

  第二步:等级重复三次

  公式:

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

  ROW(A1)随着公式向下填充,返回值自动变为1、2、3、4、5……,MOD为求余函数,MOD(ROW(A1)-1,4)返回值为0,1,2,3,0……,MOD(ROW(A1)-1,4)+1返回值为1,2,3,4,1……,INDEX($B$2:$B$5,MOD(ROW(A1)-1,4)+1)返回值$B$2:$B$5中的第1个、第2个、第3个、第4个、第1个……,即实现等级重复。

  第三步:合成总公式

  将以上两步公式用“&”连接,同时,为了避免错误值,所有加IFERROR函数。

  公式如下:

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

  关于INDEX:

  Excel243 | INDEX+MATCH,查找神组合(一)此篇中有详细解释;

  关于IFERROR:

  Excel144 | VLOOKUP与IFERROR是好搭档,此篇中有详细解释;

查看原文 >>
相关文章