一文搞清楚ExcelVBA中的合并单元格

在我们日常的Excel表格处理中,为了版面的整洁、美观,往往对表格的一些单元格进行合并处理。今天这篇文章就专门讲一下在VBA中如何对合并单元格进行一系列操作。

▎合并单元格写入值

如下图,如果我们想向合并单元格内部写值,我们应该写:

    Sub test()Range("E4").Value = 1End Sub

    结论:向合并单元格写入值,按合并单元格左上角的单元格地址写入即可。如果你强制的向E5单元格写值,最终是看不到任何效果的(取消合并,也没有任何效果)。

    ▎合并单元格插入图片

    如果向合并单元格中插入图片,并且使图片填充满整个单元格。我们应该这样写:

      Sub 合并单元格插入图片() Dim rng As Range Set rng = Range("e4").MergeArea pic = ThisWorkbook.Path & "\1.png" ActiveSheet.Shapes.AddPicture pic, True, True, rng.Left, rng.Top, rng.Width, rng.HeightEnd Sub

      结论:

      MergeArea 属性:返回包含指定单元格的合并单元格区域。可以利用这个特性获取到合并单元格区域的完整地址。

      拓展一下,已知合并单元格中任意一个单元格的地址,获取合并单元格的值,我们这样写:

        Range("E3").MergeArea.Cells(1, 1)就返回了合并区域的值

        ▎用代码合并单元格

        如果我们想用代码来合并单元格,我们这样写:

          Sub 合并与取消单元格()Range("E4:F7").MergeRange("E4:F7").UnMergeEnd Sub

          判断某个单元格是否是合并单元格,我们这么写:

            Sub 判断是否是合并单元格() Range("E4:F7").Merge If Range("E5").MergeCells Then MsgBox "是合并单元格" Else MsgBox "不是合并单元格" End IfEnd Sub

            ▎获取合并单元格的一些特定属性

            如果我们想获取合并单元格的总行数、总列数。我们这样写:

              Range("B3").MergeArea.ROW 返回了合并区域第一行的行标Range("B3").MergeArea.column返回了合并区域第一列的行标Range("B3").MergeArea.rows.Count 返回了合并区域总行数Range("B3").MergeArea.columns.Count 返回了合并区域总列数

              ▎一个小趣味的问题

              如果我们采用格式刷的方式,制作合并单元格。那么会出现隐藏数据。比如下图中,取消合并单元格之后,会多出来一部分数据。

              他的根源是因为这个合并单元格是格式刷刷来的。


              (0)

              相关推荐

              • excelvba代码编辑视频:如何编辑单元格引用方法

                excelvba代码编辑视频|vba代码如何编辑视频|编辑vba单元格引用视频|vba代码编辑方法视频 本视频教程由部落窝教育分享.

              • Excel VBA教程 S02E10.单元格(实战)【ExcelVBA教程】

                Excel VBA教程 S02E10.单元格(实战)【ExcelVBA教程】

              • 入门必学 VBA批量合并拆分单元格

                本技巧的目的:掌握单元格合并,拆分,求和的方法. 用代码合并单元格后的效果 用代码拆分单元格后的效果 如果需要在拆分后将原有的文字全部保留,在单元格中实现是很麻烦的一件事,但使用VBA代码形式很简单. ...

              • EXCEL中对合并单元格对应的多行数据快速求和

                今天群里又有人问到合并单元格对应行的数据求和问题,顺便就写下来以后遇到也不用再讲一遍了,具体看图即可,问题的关键在于合并单元个对应的行数是不相同的,所以简单的求和很难直接写,要一个个的写sum那也太麻 ...

              • 一文搞定英语中的主语、谓语、宾语、定语、状语、补语和表语

                语法是理解英语逻辑的核心.语法不好的同学,处理简单句尚可:遇到复杂句型时,就晕头转向了.所以,要彻底读懂英语,必须在语法上下苦功夫.今天,我们彻底解析一下这些句子成分.(下图为:一个复合句中,所有的句 ...

              • 一文搞懂黄历中的每日宜忌

                我们在看万年历或者通胜时,都会看到今日宜某事,今日忌某事.那么这些宜忌是从何而来呢?他们又代表什么意思呢? [每日宜忌都有哪些] 我们都知道,"择吉"主要看的就是这个时刻所值的神煞 ...

              • 【九上数学】一文搞定“圆”中最常用12条结论

                [国庆中秋特辑]第三届轴对称设计大赛,等你来投票! 给你喜爱的轴对称作品投票! 01 垂径定理 垂直于弦的直径平分弦,并且平分弦所对的弧:平分弦(不是直径)的直径垂直于弦,并且平分弦所对的弧. 如图, ...

              • 一文搞定Excel中的关键词模糊查找!

                今天的主题就是关键词查找,废话就不说了! 直接来看效果图 功能说明: 根据输入的关键词,把名称中包含此关键词的信息显示出来! 实现方式: 纯Excel函数! 实用级别: ☆☆☆☆☆ 教学方式:主思路, ...

              • 【深度学习】一文搞定面试中的优化算法

                深度学习各类优化器 借用古代炼丹的一些名词,我们可以把训练模型中的数据比做炼丹药材,模型比做炼丹炉,火候比做优化器.那么我们知道,同样的药材同样的炼丹炉,但是火候不一样的话,炼出来的丹药千差万别,同样 ...

              • 一文搞懂Python中的核心概念:导入,模块,包

                前言 Python作为一个解释器,一个程序,如果不导入任何外部模块或包,就做不了什么.理解Python如何导入模块和包将在几乎所有的场景中都很有帮助. 本文中的所有代码都是在Linux(Ubuntu) ...

              • 寒假预习| 一文搞定英语中的主语、谓语、宾语、定语、状语、补语和表语

                语法是理解英语逻辑的核心.语法不好的同学,处理简单句尚可:遇到复杂句型时,就晕头转向了.所以,要彻底读懂英语,必须在语法上下苦功夫.今天,我们彻底解析一下这些句子成分.(下图为:一个复合句中,所有的句 ...

              • 一文搞懂NLP中的对抗训练

                来自:李rumor 本文主要串烧了FGSM, FGM, PGD, FreeAT, YOPO, FreeLB, SMART这几种对抗训练方法,希望能使各位大佬炼出的丹药更加圆润有光泽,一颗永流传 简介 ...