Excel 宏录制与VBA编程 ——VBA编程技巧篇二 (合并内容相同连续单元格、取消合并单元格并在每个单元格中保留内容)

1、合并内容相同的连续单元格

如果需要合并如图所示的工作表中B列中部门相同的连续单元格

VBA代码:

cpp 复制代码
Sub Mergerng()
    Dim IntRow As Integer
    Dim i As Integer
    Application.DisplayAlerts = False
    With Sheet1
        IntRow = .Range("A65536").End(xlUp).Row
        For i = IntRow To 2 Step -1
            If .Cells(i, 2).Value = .Cells(i - 1, 2).Value Then
                .Range(.Cells(i - 1, 2), .Cells(i, 2)).Merge
            End If
        Next
    End With
    Application.DisplayAlerts = True
End Sub

2、取消合并单元格时在每个单元格中保留内容

如果需要合并如图所示的工作表中B列中部门相同的连续单元格

VBA代码:

cpp 复制代码
Sub UnMerge()
    Dim StrMer As String
    Dim IntCot As Integer
    Dim i As Integer
    With Sheet1
        For i = 2 To .Range("B65536").End(xlUp).Row
            StrMer = .Cells(i, 2).Value
            IntCot = .Cells(i, 2).MergeArea.Count
            .Cells(i, 2).UnMerge
            .Range(.Cells(i, 2), .Cells(i + IntCot - 1, 2)).Value = StrMer
            i = i + IntCot - 1
        Next
    End With
End Sub

关注

笔者 - jxd

相关推荐
鱼樱13 小时前
腾讯版小龙虾WorkBuddy试用体验——Excel处理效率翻倍
excel
LucaJu14 小时前
Java + EasyExcel 实现单个接口导出多个Excel
java·excel
CN.LG16 小时前
Excel 中把 Sheet页所有 “xxx” 字体标红
excel
weixin_7042660517 小时前
读取Excel 和 显示预约人数
spring boot·mybatis·excel
2501_9307077819 小时前
使用C#代码在 Excel 中创建数据透视图
excel
西凉的悲伤20 小时前
EasyExcel 进行excel读写操作
excel·easyexcel
lifewange20 小时前
Vim 编辑器参数(启动参数 + 配置参数)
编辑器·vim·excel
zfan5201 天前
python对Excel数据处理(1)
python·excel·pandas
城数派2 天前
2025年南京市全类别POI(55W+数据)
数据库·arcgis·信息可视化·数据分析·excel
yuhulkjv3352 天前
AI导出的Excel公式失效
人工智能·ai·chatgpt·excel·豆包·deepseek·ai导出鸭