Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 3336|回复: 5

[已解决]求助:多单元格数据合一

[复制链接]
发表于 2012-3-12 21:36 | 显示全部楼层 |阅读模式
问题:如何快捷将D、E、F、G四列的数据合并到C列的相应单元格中?原各列的数据用顿号分隔。如:D2:G2的数据合并到C2。因数据太多,有几千个记录,一一复制粘贴太麻烦了。谢谢! 多单元格数据合一.rar (7.49 KB, 下载次数: 12)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2012-3-12 21:54 | 显示全部楼层    本楼为最佳答案   
excel 工作表普通函数合并文本是件困难的事情,用自定义函数就很方便。

自定义函数-合并字符(一行)(VBA).rar (11.42 KB, 下载次数: 16)
回复

使用道具 举报

发表于 2012-3-12 22:07 | 显示全部楼层
本帖最后由 淡芳有韵 于 2012-3-13 12:26 编辑

=SUBSTITUTE(SUBSTITUTE(D3&"、"&E3&"、"&F3&"、"&G3,"0、",),"、0",)
回复

使用道具 举报

发表于 2012-3-12 22:15 | 显示全部楼层
  1. Sub 合并()
  2.     Dim i As Integer, j As Integer, irow As Integer
  3.     Dim ar, br()
  4.     irow = Range("a65536").End(xlUp).Row
  5.     ar = Range("d2:g" & irow)
  6.     ReDim br(1 To UBound(ar), 1 To 1)
  7.     For i = 1 To UBound(ar)
  8.         For j = 1 To 4
  9.             If ar(i, j) <> "" Then
  10.                 br(i, 1) = br(i, 1) & "、" & ar(i, j)
  11.             End If
  12.         Next
  13.         br(i, 1) = Right(br(i, 1), Len(br(i, 1)) - 1)
  14.     Next
  15.     Range("c2:c65536").ClearContents
  16.     Range("c2").Resize(UBound(br)) = br
  17. End Sub
复制代码

多单元格数据合一.rar

13.57 KB, 下载次数: 4

回复

使用道具 举报

 楼主| 发表于 2012-3-13 08:11 | 显示全部楼层
问题已经解决。谢谢各位的帮助了!非常感谢!
回复

使用道具 举报

发表于 2012-3-13 12:25 | 显示全部楼层
ppp710715 发表于 2012-3-13 08:11
问题已经解决。谢谢各位的帮助了!非常感谢!

=SUBSTITUTE(SUBSTITUTE(D3&"、"&E3&"、"&F3&"、"&G3,"0、",),"、0",)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-2 12:18 , Processed in 0.312622 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表