EXCEL中如何将A列相同项所对应的B列数据按C列要求合并至D列,并且数据间用逗号隔开。

2024-12-03 12:43:34
推荐回答(4个)
回答1:

可用PHONETIC函数实现。

示例如下:

假定合并如图所示的“一班”的同学名字到D列,名字之间以逗号分隔。

D2的公式:

=SUBSTITUTE(SUBSTITUTE(PHONETIC(OFFSET(A$1,MATCH(C2,A:A,)-1,,COUNTIF(A:A,C2),2)),C2,","),",",,1)

其中:OFFSET(A$1,MATCH(C2,A:A,)-1,,COUNTIF(A:A,C2),2) 得到所有一班的班级与姓名区域,然后用PHONETIC函数合并,得到依次由“一班”和姓名组成的字符串,最后用SUBSTITUTE函数将“一班”替换为逗号,并将第一个逗号去掉,得到如图中D2单元格的结果。

回答2:

一个简单的 循环语句就搞定了
运行只需秒秒钟解决

如果要用Substitute+ PHONETIC,
先转换成文本就可以了

=(SUBSTITUTE(PHONETIC(OFFSET($A$1,MATCH(E2,$A$1:$A$1000,0)-1,0,COUNTIF($A$1:$A$1000,E2),3)),E2,","))

回答3:

函数可以实现,不过有点长,做好了的,要的话可以发邮箱

回答4:

用VBA实现