vba合并单元格并保留值

 时间:2026-02-13 17:07:08

1、首先打开需要进行合并内容的工作表,以下面表格为例:

vba合并单元格并保留值

2、开发工具选项卡-Visual Basic,在工程窗口右键插入一个模块,将以下代码复制到代码窗口:

Sub 合并单元格()

Dim n As Integer, i As Integer

Application.ScreenUpdating = False

Set a = Application.InputBox("请选择需要合并的所在列", "提示框", , , , , , 8)

n = a.Column

Cells(1, n).Offset(0, 1).EntireColumn.Insert

    For i = 1 To Cells(Rows.Count, n).End(xlUp).Row

        If Cells(i, n) = Cells(i + 1, n) Then

            Cells(i, n).Offset(0, 1).Resize(2, 1).Merge

        End If

    Next i

With Range(Cells(1, n), Cells(Cells(Rows.Count, n).End(xlUp).Row, n))

    .Offset(0, 1).Copy

    .PasteSpecial xlPasteFormats

    .HorizontalAlignment = xlCenter

    .VerticalAlignment = xlCenter

    .Offset(0, 1).EntireColumn.Delete

End With

Application.ScreenUpdating = True

End Sub

vba合并单元格并保留值

3、点击运行按钮,会弹出一个选择合并单元格所在列的对话框,选择需要合并的列,点击确定即可。

vba合并单元格并保留值

vba合并单元格并保留值

4、现在我们检查看看是否合并了单元格并且内容还在呢?点击取消合并后,原单元格的数据还在。

vba合并单元格并保留值

vba合并单元格并保留值

5、以上就是通过vba合并单元格并保留值的方法了。具体方法是通过在需要合并的列右边插入一列,并判断符合合并的内容,在右边对应列进行合并,再通过复制,粘贴格式到实际需要合并的单元格中。

  • 怎样使用VBA统计选区中不重复数据个数?
  • 如何用VBA获取当前工作簿的名称
  • 如何用VBA删除工作表
  • 如何使用VBA获取EXCEL表格最后行列数
  • excel中使用vba操作选择性粘贴的方法
  • 热门搜索
    身份证消磁了怎么办 头发软怎么变硬 透明胶带的胶怎么去除 姚笛文章怎么回事 无限极怎么样 孕妇感冒怎么办 邹怎么读音 红烧鲤鱼怎么做 惠而浦空调怎么样 睡觉打呼噜怎么办