=IF(B3=B2,"",MID(SUBSTITUTE(PHONETIC(OFFSET($B$2,MATCH(B3,$B$3:$B$116,),0,COUNTIF($B$4:$B$116,B3),2)),B3,","),2,999))
1、OFFSET函数
OFFSET(reference位移起点,rows上下移动位置,cols左右移动位置,height区域高度,width区域宽度)
MATCH(B3,$B$3:$B$116,)计算重复项在所有重复项区域的位置,作为OFFSET函数的上下位移参数,
COUNTIF($B$4:$B$116,B3)计算重复项在所有重复项区域的出现次数,作为OFFSET函数的高度参数。
2、PHONETIC函数
PHONETIC函数能将OFFSET区域的内容分行将记录依次合并,并在一个单元格展示。
3、SUBSITUTE函数
SUBSITUTE将重复项目替换成逗号",",
4、MID函数
MID函数提取除第一个逗号外的所有内容,999表示合并后的文本长度,如果文本长度超过999,可以重新修改。
5、IF函数
最外层IF函数是对第一次出现的记录显示合并后字符,第二次以后出现相同记录则显示为空,意思是保留第一次文本合并内容,这里需要在填写公式前按照关键项目进行排序后,再填写,否则会导致错误。