先看一下原始数据,A到E列为单元格数据,需要将每行的非空单元格内容合并到F列存储在一个单元格中,并且用逗号分开。
![](http://img13.3lian.com/201404/15/33ccebc3df4639d38a9e2f41fe75bb2f.jpg)
【点击图片进入下一页或下一篇】
选择【开发工具】-【插入】- 选择【ActiveX控件】中的按钮。
![](http://img13.3lian.com/201404/15/732e9e223a6f3f5abaebf4b59b21f705.jpg)
【点击图片进入下一页或下一篇】
用鼠标在excel表格中画出一个按钮。
![](http://img13.3lian.com/201404/15/6d538571defa32351cb147354e332a33.jpg)
【点击图片进入下一页或下一篇】
双击该按钮,进入编辑代码模式。
![](http://img13.3lian.com/201404/15/8b1a863bb77b4e0824a99b37bfd7e547.jpg)
【点击图片进入下一页或下一篇】
粘贴下列代码:
Private Sub CommandButton1_Click()
Dim n, i, j, m
Dim arr, brr()
n = [a65535].End(xlUp).Row
ReDim brr(1 To n)
arr = Range("A1:E" & n) "其中A1:EN表示的是原始数据区域
For i = 1 To n
For j = 1 To 5 "5表示A到E列是5列
If arr(i, j) <> "" Then
brr(i) = brr(i) & "," & arr(i, j)
End If
Next j
brr(i) = Mid(brr(i), 2, 99)
Next i
[F1].Resize(n, 1) = Application.Transpose(brr) "F1表示从F1开始输出结果
End Sub
![](http://img13.3lian.com/201404/15/d77f564d081f06214e5d168e779620b1.jpg)
【点击图片进入下一页或下一篇】
返回excel工作表界面,点击【开发工具】-【编辑模式】按钮退出编辑模式。
![](http://img13.3lian.com/201404/15/d9b59a45bed5533ceb53358fb2dc6548.jpg)
【点击图片进入下一页或下一篇】
点击刚才插入的命令按钮,F列就输出了我们想要的内容。
![](http://img13.3lian.com/201404/15/f58717e843feca84e473a1868cecf59c.jpg)
【点击图片进入下一页或下一篇】
注意:
只需要更改代码中加标注的原始区域列标和行号及输出结果位置的第一个单元格就可以应用到读者自己实际的工作表中去了。
注:更多精彩教程请关注三联电脑教程栏目,三联电脑办公群:189034526欢迎你的加入
- 看不过瘾?点击下面链接! 【本站微信公众号:gsjx365,天天有好故事感动你!】