excel 如何用VBA进行多列合并?

张三邮箱1邮箱2邮箱3李四邮箱1邮箱2王五邮箱1邮箱2邮箱3邮箱4合并为张三邮箱1张三邮箱2张三邮箱3李四邮箱1以此类推... 张三 邮箱1 邮箱2 邮箱3
李四 邮箱1 邮箱2
王五 邮箱1 邮箱2 邮箱3 邮箱4
合并为
张三 邮箱1
张三 邮箱2
张三 邮箱3
李四 邮箱1
以此类推
展开
 我来答
科盈荧蕖
2016-01-24
知道答主
回答量:41
采纳率:0%
帮助的人:2.4万
展开全部

  将多列表格内容合并在一列中,可以按以下方法操作,下面是原图:


  1、创建一个Excel表格,要求将表格的多列内容合并在一列中。

  2、将表格红色边框内的多列内容,合并在右侧枚红色边框的一列。

  3、在F2表格内输入“=

  4、输入完可以得到这样的效果。

  5、逐步在F3输入“=B3&C3&D3&E3”,F4输入“=B4&C24&D4&E4”……可以得到相应效果。

  6、还有简便的方式:拖拽格式,得到效果!选中表格,拖拽右下角的“+”往下拖拽即可。

  

浩哥奕弟
2013-01-07 · 杂七杂八想到什么就是什么
浩哥奕弟
采纳数:381 获赞数:956

向TA提问 私信TA
展开全部
Sub abc()
Dim R%, i%, j%, n%
Dim Arr, Brr, Crr()
R = [A65536].End(xlUp).Row ''''原始数据在A行,R取得A行存在数据的最后一行
ReDim Crr(1 To R * 10, 1 To 1) ''''定义一个CRR动态数组,区域是:R*10(行),1列,10:每人对应的邮箱数的最大值,确保足够
Arr = Range("A1:A" & R) ''''把A列原始数据装入ARR数组中
For i = 1 To UBound(Arr) ''''循环ARR
Brr = Split(Arr(i, 1), " ") ''''用PLIT函数将ARR(i,1)拆分为数组BRR,条件是空格" "
For j = 1 To UBound(Brr) ''''循环BRR
If Brr(j) <> "" Then ''''如果BRR(J)元素不为空值""
Crr(n + 1, 1) = Brr(0) & Brr(j) ''''则将BRR(0)即第一个元素连接BRR(J)装入数组CRR
n = n + 1 ''''n值+1
End If
Next
Next ''''循环结束后将CRR数组装入表格中的B列,从B1开始
Range("b1").Resize(R * 10, 1) = Crr
End Sub
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
meteorrite
2013-01-07 · 超过19用户采纳过TA的回答
知道答主
回答量:101
采纳率:0%
帮助的人:60.3万
展开全部
Sub aa()
i = 1: o = 10
Dim p As Long
Do While Range("a" & i).Value <> ""
p = 1
Do While Range(Chr(65 + p) & i).Value <> ""

Range("a" & o).Value = Range(Chr(65) & i).Value & " " & Range(Chr(65 + p) & i).Value
p = p + 1
o = o + 1
Loop
i = i + 1
Loop
End Sub
不知道是不是这个样子的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
果登
2013-01-07
知道答主
回答量:48
采纳率:0%
帮助的人:23.4万
展开全部
为什么叫 合并 呢? 看起来是拆分啊。 你的数据 张三 邮箱1 邮箱2 邮箱3 是在四列数据中,还是在同一列? 关于VBA的问题,最后把实例发上来,不然,代码不好写。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式