EXCEL判断第一列如果相同,则合并第二列中的值到一个单元格,中间用逗号隔开
怎么自动实现如下的合并呢?原始文件如下:1020001401C11020002501C21020002501C31020017001EC11030037701R11030...
怎么自动实现如下的合并呢?
原始文件如下:
1020001401 C1
1020002501 C2
1020002501 C3
1020017001 EC1
1030037701 R1
1030037701 R2
1110001901 X1
合并后的结果:
1020001401 C1
1020002501 C2,C3
1020017001 EC1
1030037701 R1,R2
1110001901 X1
补充说明,举例中每行最多只是2个,但是实际中可能是几百个,不一定。
悬赏值不多,但是已经是我所有积蓄了,求大侠帮忙。 展开
原始文件如下:
1020001401 C1
1020002501 C2
1020002501 C3
1020017001 EC1
1030037701 R1
1030037701 R2
1110001901 X1
合并后的结果:
1020001401 C1
1020002501 C2,C3
1020017001 EC1
1030037701 R1,R2
1110001901 X1
补充说明,举例中每行最多只是2个,但是实际中可能是几百个,不一定。
悬赏值不多,但是已经是我所有积蓄了,求大侠帮忙。 展开
5个回答
2014-05-21
展开全部
新工作表A2以下公式,然后下拉。
a2=LOOKUP(1,0/NOT((COUNTIF($A$1:A1,sheet1!$A$2:$A$1000))+ISBLANK(sheet1!$A$2:$A$1000)),sheet1!$A$2:$A$1000) 下拉生成原表A列不重复项
新工作C2 数组公式,三键输入
c2=INDEX(sheet1!$B:$B,(SMALL((sheet1!$A$1:$A$1000<>$A2)/1%%+ROW($1:$1000),COLUMN(A$1))))&""
上面公式,右拉出现A列所有配匹项,下拉完成所有新工作表A列的匹配值。
最后你的A列完成,而对应CDEF列就是你的想要的B列的值,你需要做的,就是将BCD合并为一列就可以了。最后B2输入公式后下拉,
b2=CONCATENATE(b2,B2,C2,d2,e2,f3,g2,h2)
因为EXCEL目前没有数组合并为一个值的公式,所以以下行不通。
=合并( INDEX(sheet1!$B:$B,(SMALL((sheet1!$A$1:$A$1000<>$A2)/1%%+ROW($1:$1000),COLUMN(A$1:$H1))))&"")
a2=LOOKUP(1,0/NOT((COUNTIF($A$1:A1,sheet1!$A$2:$A$1000))+ISBLANK(sheet1!$A$2:$A$1000)),sheet1!$A$2:$A$1000) 下拉生成原表A列不重复项
新工作C2 数组公式,三键输入
c2=INDEX(sheet1!$B:$B,(SMALL((sheet1!$A$1:$A$1000<>$A2)/1%%+ROW($1:$1000),COLUMN(A$1))))&""
上面公式,右拉出现A列所有配匹项,下拉完成所有新工作表A列的匹配值。
最后你的A列完成,而对应CDEF列就是你的想要的B列的值,你需要做的,就是将BCD合并为一列就可以了。最后B2输入公式后下拉,
b2=CONCATENATE(b2,B2,C2,d2,e2,f3,g2,h2)
因为EXCEL目前没有数组合并为一个值的公式,所以以下行不通。
=合并( INDEX(sheet1!$B:$B,(SMALL((sheet1!$A$1:$A$1000<>$A2)/1%%+ROW($1:$1000),COLUMN(A$1:$H1))))&"")
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-05-21
展开全部
建议先对左边进行排序,然后把一样的用CONCATENATE来合并右边的单元格,但逗号要自己输入。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一步:C2输入:=IF(A2=A3,"",A2)
第二步:D2输入:=B2
第三步:C3输入:=IF(A3=A4,"",A3)
第四步:D3输入:=IF(A3=A2,D2&","&B3,B3)
第五步:双击快速填充
第六步:筛选C列中非空白项
如果要看动图的话你可以看一下这个链接。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
引用jjchangyuan的回答:
假定原数据在A、B两列
C1
=IF(COUNTIF(A$1:A1,A1)>1,"",A1) 下拉填充
D1
=IF(COUNTIF(A$1:A1,A1)>1,"",SUBSTITUTE(SUBSTITUTE(PHONETIC(OFFSET(A1,,,COUNTIF(A:A,A1),2)),A1,","),",","",1)) 下拉填充
假定原数据在A、B两列
C1
=IF(COUNTIF(A$1:A1,A1)>1,"",A1) 下拉填充
D1
=IF(COUNTIF(A$1:A1,A1)>1,"",SUBSTITUTE(SUBSTITUTE(PHONETIC(OFFSET(A1,,,COUNTIF(A:A,A1),2)),A1,","),",","",1)) 下拉填充
展开全部
这个答案的前提是A列是排好序的,有没有A列乱序时的做法?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询