如何在Excel VBA中根据行首单元格是否为空执行整行取消合并
可用VBA实现代码
Sub 取消首列为空行的合并单元格() Dim lastRow As Long Dim i As Long ' 定位当前工作表已使用区域的最后一行行号 lastRow = ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row ' 遍历所有行,可根据需求修改起始行序号(如下方1改为2即可跳过第一行表头) For i = 1 To lastRow ' 判断当前行第一列是否为空 If IsEmpty(Cells(i, 1)) Then ' 直接取消当前行所有单元格的合并 Rows(i).UnMerge End If Next i End Sub
补充说明
- 代码取消了
Select操作,相比逐行选中再操作的写法运行效率更高,数据量较大时优势更明显 - 如果需要固定操作某张工作表,可将代码中的
ActiveSheet替换为对应工作表名称,示例:Sheets("销售数据") - 无需手动调整循环的结束行号,代码会自动识别当前工作表的有效数据范围
内容的提问来源于stack exchange,提问作者actuallife
相关产品推荐
相关产品推荐

