前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >VBA实用小程序75:选择所有的合并单元格

VBA实用小程序75:选择所有的合并单元格

作者头像
fanjy
发布2021-05-07 10:36:43
1.1K0
发布2021-05-07 10:36:43
举报
文章被收录于专栏:完美Excel完美Excel

学习Excel技术,关注微信公众号:

excelperfect

在使用VBA操作单元格时,合并的单元格可能会导致问题,甚至在工作表中进行一些操作时,合并的单元格也可能会导致错误。因此,如果我们能够识别合并的单元格,就可以确定对它们采取的操作。

下面的代码可以选择工作表中的合并单元格。

Sub SelectAllMergedCells()

Dim c As Range

Dim mergedCells As Range

Dim fullRange As Range

Dim rangeDescription As String

'统计所选区域中的单元格.

'如果只有1个单元格则搜索已用区域,

'否则搜索所选的单元格区域.

If Selection.Cells.Count > 1 Then

Set fullRange = Selection

rangeDescription = "所选单元格"

Else

Set fullRange = ActiveSheet.UsedRange

rangeDescription = "活动单元格区域"

End If

'遍历当前工作表所选区域中每个单元格

For Each c In fullRange

If c.MergeCells = True Then

'如果找到第1个单元格则设置该变量,

'否则添加到已存在的单元格列表

If mergedCells Is Nothing Then

Set mergedCells = c

Else

Set mergedCells =Union(mergedCells, c)

End If

End If

Next

'选择未锁定单元格的区域

If Not mergedCells Is Nothing Then

mergedCells.Select

Else

MsgBox rangeDescription & ": "& fullRange.Address & "中没有合并的单元格."

End If

End Sub

如果在工作表中仅选择了一个单元格,则查找并选择工作表中所有已用单元格中的合并单元格;如果在工作表中选择了多个单元格,则在所选单元格区域中查找并选择合并单元格。

一旦选择了所有合并单元格,就可以对它们进行处理了。

注:本文整理自exceloffthegrid.com,供有兴趣的朋友学习参考。

欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-04-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 完美Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档