使用公式有一定的条件,
(1)序号是间隔是1的、连续的、数值(能够+1进行运算、递增)
(2)序号递增排序
序号列:第一个单元格输入第一个序号,下一行公式:
=IF((COUNTIF($A$3:$A$20,D3)-COUNTIF(D$3:D3,D3)*3-1)>0,D3,D3+1)
下拉
E列全部是该序号的第一个数据,使用Vlookup获取
=VLOOKUP(D3,$A$3:$B$20,2,0)
F:H列需要数组公式
F:
=IFERROR(INDEX(INDIRECT("B" & MIN(IF($A$1:$A$20=$D3,ROW($A$1:$A$20),9999)) & ":B" & MAX(IF($A$1:$A$20=$D3,ROW($A$1:$A$20),0))),COLUMN()-4+COUNTIF($D$2:$D2,$D3)*3),"")
同时按Ctrl+Shift+Enter
向右拖拽、向下拖拽
示例:
建议使用VBA更简洁、方便。
=IFERROR(IF(AND($F3=$F2,COUNTIF($B$3:$B$10,$G$2)>=5),IF(G$2=1,VLOOKUP($F3&G$2,$A$3:$C$10,3,0),INDEX($C$3:$C$10,MATCH($F3&G$2+3,$A$3:$A$10,0))),INDEX($C$3:$C$10,MATCH($F3&G$2,$A$3:$A$10,0))),"")
公式拿去试一下
序号因为没有关键字 需要手动输入 上面的内容1,2,3,4要改一下
=B3&COUNTIF($B$3:B3,B3)
这里要加一个辅助列