在Excel中,使用合并单元格功能时,最后的结果将只是所合并区域左上角单元格中的数据,如图1所示。
然而,很多时候我们都需要在合并的同时也能保留单元格的的数据。下面的程序在合并单元格后将保留合并单元格区域中所有单元格中的数据。
Sub MergeCellsAndValues()
Dim rng As Range
Dim strResult As String
On Error Resume Next
For Each rng In Selection '可以将" "更换为你自已的分隔符号
strResult = strResult & rng.Value & " "
Next rng
strResult= Left(strResult, Len(strResult) - 2)
With Selection
.Clear
.Cells(1).Value = strResult
.Merge
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlCenter
.WrapText = True
End With
End Sub
代码首先遍历所要合并的单元格并将这些单元格中的值连接成一个字符串存储在指定的变量中,示例中使用空格(” ”)来分隔各单元格的数据,你可以修改为其他分隔符,例如逗号。代码运行后的效果如图所示。