VBA之Excel应用第四章第六节:利用Resize调整单元格区域的大小

B站影视 日本电影 2025-08-07 02:50 3

摘要:《VBA之EXCEL应用》(版权10178983)是非常经典的,是我推出的第七套教程,定位于初级,目前是第一版修订。这套教程从简单的录制宏开始讲解,一直到窗体的搭建,内容丰富,实例众多。大家可以非常容易的掌握相关的知识,这套教程共三册,十七章,都是我们在利用E

《VBA之EXCEL应用》(版权10178983)是非常经典的,是我推出的第七套教程,定位于初级,目前是第一版修订。这套教程从简单的录制宏开始讲解,一直到窗体的搭建,内容丰富,实例众多。大家可以非常容易的掌握相关的知识,这套教程共三册,十七章,都是我们在利用EXCEL工作过程中需要掌握的知识点,希望大家能掌握利用。今日讲解的内容是:VBA之Excel应用第四章第六节:利用单元格的Resize属性,调整单元格区域的大小

【分享成果,随喜正能量】225 如果想要什么,不要外求,只管准备好自己的心念,不断地学习并破除内在的各种认知障碍,万事万物会自动配合你的提升。

大家好,我们这章开始学习单元格对象。单元格(Range)对象是Excel VBA中最重要的对象之一。本章概述了Range对象的属性和方法,包括如何声明一个单元格对象,如何选择单元格对象,以及对行、列的操作,还讲解了如何对单元格进行复制、粘贴、清除、计数,以及对当前区域CurrentRegion的讲解,还涉及到单元格的联合与交叉等。通过这章的学习,大家会更清楚地看到VBA的结构,以及在实际工作中VBA的综合利用。

大家好,我们今天讲解的内容是利用单元格的Resize属性,调整单元格区域的大小。这讲的内容非常重要,在实际工作中,利用这个属性的例子也非常普遍,比如数组回填,字典键值或者键的回填都有对回填区域的要求,利用的主要就是这个Resize属性,来调整单元格区域大小。

单元格的这个属性将调整指定区域的大小。返回一个range对象,该对象代表调整后的区域。

语法:expression.Resize (RowSize, ColumnSize)

expression:一个返回 Range 对象的表达式。

参数:

① RowSize 可选 Variant类型,代表新区域中的行数。 如果省略此参数,则区域中的行数保持不变。

② ColumnSize 可选 Variant类型,代表新区域中的列数。 如果省略此参数,则区域中的列数保持不变

1)示例:调整 Sheet1 中选定区域的大小,使之增加一行和一列。

Worksheets("Sheet1").Activate

numRows = Selection.Rows.Count

numColumns = Selection.Columns.Count

Selection.Resize(numRows + 1, numColumns + 1).Select

2)示例:假定已在 Sheet1 上具有含标题行的表。我们要选择表, 但不选择标题行。在运行此示例之前,活动单元格必须位于表内。

Set tbl = ActiveCell.CurrentRegion

tbl.Offset(1, 0).Resize(tbl.Rows.Count - 1, tbl.Columns.Count).Select

从上面的讲解中我们知道,Excel vba中的“Resize”属性可以使一个范围的特定行数和列数变大或变小。但要注意,Resize属性始终以区域的左上角单元格为起点。

1)如下面的一个单元格区域A1:B2,我们要把这个区域扩充到A1:C4的范围:

代码该如何写呢:

Sub mynzL 'Resize属性1

Range("A1:B2").Select

Range("A1:B2").Resize(4, 3).Select

End Sub

我们看下面的代码运行效果:

2)将范围(“A1:C4”)调整为4行1列,并选择此范围。

Sub mynzM 'Resize属性2

Range("A1:C4").Select

Range("A1:C4").Resize(, 1).Select

End Sub

我们看下面的代码运行效果:

可见,如果省略RowSize参数,则区域中的行数保持不变。

3)将范围(“A1:C4”)调整为1行3列,并选择此范围。

Sub mynzN 'Resize属性3

Range("A1:C4").Select

Range("A1:C4").Resize(1).Select

End Sub

我们看下面的代码运行效果:

可见,如果省略ColumnSize参数,则区域中的列数保持不变。我们要注意代码的写法。

今日内容回向:

1) 单元格的Resize属性意义是什么,有什么作用?

2) 如何省略参数中的值,是什么作用呢?

本讲内容参考程序文件:工作簿04.xlsm

我20多年的VBA成果全在下面的资料中:

来源:VBA语言专业教育

相关推荐