ad

跟着一起学《Excel VBA跟卢子一起学 早做完 不加班 基础入门版》_4.3 合并拆分单元格的操作

网友投稿 138 2023-11-07

【摘要】 本书摘自《Excel VBA跟卢子一起学 早做完 不加班 基础入门版》一书中第4章,第3节,韩小良著。

4.3 合并拆分单元格的操作

无言:讲完了区域集合的运用,接着讲讲在设计Excel工作表时经常用到的操作。 ? 皮蛋: 什么操作呢?

跟着一起学《Excel VBA跟卢子一起学 早做完 不加班 基础入门版》_4.3 合并拆分单元格的操作

无言: 它就是合并单元格。

皮 蛋 :合并单元格,确实经常会用,而且特别是有时做相同项时,我会对它们进行合并。

合并单元对于后期的统计造成很多意想不到的难度,例如:在运用函数计算时,合并单元 格多少会造成函数公式的统计结果不正确或增加公式的字符长度等,先来看看如何获取区域中 是否存在合并单元格。

判断是否存在合并单元格:Range.MergeCells*

无言:合并单元格在设计使用Excel工作表是经常出现的情况,如果使用位置得当不会对 后期的统计造成不必要的麻烦。例如 一 个鲜亮的大标题用合并单元格来操作,对后期基本无影

响,但是如果是标题字段或者具体数据区域,曜喔,这个可就致命了。

? 皮蛋;那么要如何判断单元格区域中是否存在合并呢,不会是用眼睛看吧?

无言:这个可以,但是最简单就使用Excel的合并单元格功能再单击一次即可,如图4-28 所示。

图4-28 中通过Excel 的【合并后并居中】命令获得③的效果,原来存在合并的单元格区域 都给被分解为一个个独立单元格,且其边框也会消失。但是这个方法对应整体的,如果想要判 断选中的单元格区域中是否存在合并单元格,就要用到 Range.MergeCells 属性了。

如果区域包含合并单元格,则为 True。Variant型,可读写

表达式.MergeCells

Range.MergeCells 属性的作用是:当表达式区域中存在着合并单元格,Merge Cells 将返回 True, 没有则返回 False; 根据该特性判断指定的单元格是否存在着合并单元格,如代码4-18所示。

代码4- 18 判断选中区域是否存在合并单元格

1|Sub RngMergeBol)

21 MsgBox”所选中单元格:"& Selection.Address(0,0)&vbCr &lf(Selection.MergcCells,“存在”,“不存

在")&”合并单元格"

3|End Sub

无言:代码4-18示例过程通过Range.MergeCells属性判断Selection (选中的单元格)是否存在合并单元格并返回相应的提示。

皮蛋:就这样简单啊,那如果要有多个合并区域,我要如何获取它们的信息呢?

4.3.2 返回合并单元格信息:Range.MergeArea*

无言:来来,满足你的好奇心,还是以刚才图4-28中的例子来说明,如代码4-19所示。

代码4-19示例过程中 Rng 变量为让用户选取判断区域用,使用Application.InputBox 方法 限制了只能选 Range对象;接着通过IfRng ls Nothing Then Exit Sub 语句判断是否选择单元格, 若返回 True 则退出本过程。

代码4- 19 选择区域中存在合并单元格否并返回相关信息

1|Sub RngsMergeBol)

2| Dim iAs Long,Rng As Range,RngAdd As String,Cous As Long

3| On Error Resume Next

4| Set Rng=Application.InputBox(“请选择一维的单元格区域——某一行(列)的单元格区域。”,”区域 选择",Type:=8)

5| If Rng Is Nothing Then Exit Sub

6| IfRng.Columns.Count>1 Or Rng.Rows.Count=Rows.Count Or Rng.Count =1 Then Exit Sub 71 Fori=1To Rng.Count

8| IfRng(i).MergeCells Then

9| Cous=Cous+1

10| RngAdd=RngAdd&Rng(i).MergeArea.Address(0,0)&","

11| i=i+Rng(i).MergeArea.Rows.Count

12| End If

13| Nexti

14|RngAdd=Left(RngAdd,Len(RngAdd)-1)

15| MsgBox" 所选中区域中存在:"&Cous&" 个合并区域,它们的地址是:"&vbCr&RngAdd

16|End Sub

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:《Python学习笔记 从入门到实战》_更了解Python的途径之一_6.1 函数就是某个指定功能的语句
下一篇:《Excel VBA+SQL数据管理与应用模板开发》_7.4.4 根据合同号提取重要的相关数据
相关文章

 发表评论

暂时没有评论,来抢沙发吧~

×