当前位置:首页 > WPS表格 > 正文内容

VBA多列数据合并成一列,非&

达叔8个月前 (12-15)WPS表格244

先来看看效果,第1至9列全部合并到一列中,最后一列为结果列

QQ截图20191215110327.jpg

选中合并区域,运行以下代码即可:



Sub 合并列()
Dim hang As Integer '控制输出的行
Dim lie As Integer '控制输出的列
hang = Selection.Cells(1).Row
lie = Selection.Columns.Count + Selection.Cells(1).Column '默认在选定区域后的第一列输出
Dim sHang As Integer '选定区域的左上第一个单元格的行下标
Dim sLie As Integer '选定区域的左上第一个单元格的列下标
For sLie = Selection.Cells(1).Column To Selection.Columns.Count + Selection.Cells(1).Column - 1 '列后循环 Selection.Columns.Count 为选定区域的列数
For sHang = Selection.Cells(1).Row To Selection.Rows.Count + Selection.Cells(1).Row - 1 '行先循环
If Cells(sHang, sLie) = "" Then '若当前单元格内容为空则跳出当前循环
Exit For
End If
Cells(hang, lie) = Cells(sHang, sLie) '若不为空则在输出单元格输出数据
hang = hang + 1 '输出行标加1
Next
Next
End Sub


版权声明:本文由WPS达师发布,如需转载请注明出处。
标签: vba多列合并