excel把几列数据合并到一列单元格中并用分隔符分开

我要处理的数据量非常巨大。如下表ABCD1212324567我想把它变成A1,21,2,324,5,6,7如果用普通的=A1&","&B1","&C1&","&D1就会变... 我要处理的数据量非常巨大。如下表
A B C D
1 2
1 2 3
2
4 5 6 7
我想把它变成
A
1,2
1,2,3
2
4,5,6,7
如果用普通的=A1&","&B1","&C1&","&D1就会变成
A
1,2,,
1,2,3,
2,,,
4,5,6,7
展开
 我来答
rocfe
2011-08-24 · TA获得超过5784个赞
知道大有可为答主
回答量:2194
采纳率:70%
帮助的人:1398万
展开全部
其实用你的普通方法就可以。
首先选择数据区域如:A1:D8000
按Ctrl+G---条件定位---空值--确定
输入:“+”按Ctrl+Enter结束
然后在E1输入:=A1&","&B1&","&C1&","&D1 并向下填充
选择E列--复制--右键--选择性粘贴--数值--确定
选择E列--Ctrl+H--查找内容输入:“,+”---替换内容留空--全部替换即可。
飘逸幽谷
2011-08-24 · 财务软件、office办公、智能数码
飘逸幽谷
采纳数:1177 获赞数:2218

向TA提问 私信TA
展开全部
为了使公式更简单化,另取两空白列,这里假设E、F列,且数据从第二行开始,则E2、F2分别对应输入下面公式,回车下拉,E列就是你要的结果
=IF(A2="","",A2&",")&(IF(B2="","",B2&","))&(IF(C2="","",C2&","))&(IF(D2="","",D2))
=IF(RIGHT(E2,1)=",",LEFT(E2,LEN(E2)-1),E2)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
languanzeng
推荐于2016-03-14 · TA获得超过2285个赞
知道小有建树答主
回答量:1645
采纳率:0%
帮助的人:1810万
展开全部
用vba代码 ,把下面的代码放在该表模块中(右击表名 》查看代码)
数据输出在E列:

Sub aa()
Dim str1 As String
For Each c In Range("a1:a6")
str1 = ""
i = c.Row
For j = 1 To 4
If Cells(i, j).Value <> "" Then
str1 = str1 & "," & Cells(i, j).Value
End If
Next
str1 = Right(str1, Len(str1) - 1)
MsgBox str1
Cells(i, 5).Value = str1
Next c
End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sudoku52
2011-08-24 · TA获得超过7万个赞
知道大有可为答主
回答量:1.2万
采纳率:82%
帮助的人:4894万
展开全部
有个合并函数 =CONCATENATE(A1,B1,C1,D1)
更多追问追答
追问
是啥么,我很想知道呀。。。我也知道有。。。
追答
有个合并函数 =CONCATENATE(A1,B1,C1,D1)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我爱桑果
2011-08-24 · TA获得超过9786个赞
知道大有可为答主
回答量:4470
采纳率:0%
帮助的人:2892万
展开全部
你就先用&连接起来,然后通过复制-选择性粘贴-数值把公式转为数值,现在的问题就是去掉多余的逗号,B1输入公式:
=LEFT(A1,LEN(A1)+LEN(A1)-7)
公式下拉即可
这个公式只适用于最多四列数据,如果最多的数据有5列的话,最后那个7改为9,6列的话改为11,一次类推。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式