我们在VBA编程时,单元格是我们最常用的引用对象。然后再使用相应的方法和属性对其操作,以达到我们的效果。 下面介绍最常用的单元格(区域)的引用方法。以一段最简单的复制语句为例进行解释。 以下所有内容均可在公众号:data--tech(数据技术)中看到,欢迎关注,定期接收EXCEL教程。 注:以下正常语句为代码,绿色字体为注释。 一、单元格的引用。 1、 Sub 单元格引用() Worksheets(1).Range('A1').Copy Range('A2') '把A1单元格复制到A2单元格 End Sub 2 、 Sub 单元格引用() Worksheets(1).[A1].Copy [A2]'把A1单元格复制到A2单元格 End Sub 3、 Sub 单元格引用() Worksheets(1).Cells(1, 1).Copy Cells(5, 5) '把A1单元格复制到E5单元格 cells代表引用的第几行,第几列的单元格,cells(5,5)代表第5行第5列单元格,就是E5 End Sub 4、 Sub 单元格引用() Worksheets(1).Cells(1, 'A').Copy Cells(5, 'E') '把A1单元格复制到E5单元格 cells代表引用的第几行,第几列的单元格,cells(5,E)代表第5行第E列单元格,就是E5 End Sub 5、 Sub 单元格引用() Worksheets(1).Range('A1').Copy Range('A1').Offset(1, 2) '把A1单元格复制到C3单元格 利用OFFSET偏移属性,Range('A1').Offset(1, 2)代表A1向下偏移一行,向右偏移2列,就是C2单元格。参考OFFSET函数的应用。 End Sub 二、单元格区域引用 1、 Sub 单元格区域引用() Range('B1').EntireColumn.ClearContents'清除B列的所有内容 Worksheets(1).Range('A1:A2').Copy Range('B1')'只用range引用,把A1:A2区域复制到B1单元格 End Sub 2、 Sub 单元格区域引用() Range('B1').EntireColumn.ClearContents'清除B列的所有内容 Worksheets(1).Range('A1', 'A2').Copy Range('B1')'直接用引号引用单元格,中间用逗号隔开 End Sub 3、 Sub 单元格区域引用() Range('B1').EntireColumn.ClearContents'清除B列的所有内容 [a1:a2].Copy [B1]'用中括号直接引用 End Sub 4、 Sub 单元格区域引用() Range('B1').EntireColumn.ClearContents'清除B列的所有内容 Range(Range('a1'), Range('a2')).Copy Range('b2')'采用中括号加双引号的引用方式 End Sub 5、 Sub 单元格区域引用() Range('B1').EntireColumn.ClearContents'清除B列的所有内容 Range(Cells(1, 1), Cells(2, 1)).Copy Cells(1, 2)'参考引用单元格的第三个例子,用cells引用 End Sub 6、 Sub 单元格区域引用() Range('B1').EntireColumn.ClearContents'清除B列的所有内容 Range('a1').Resize(3, 1).Copy Range('B1')'采用resize方式,表示以A1单元格为基准,3表示向下移动三行(包含第一行),1表示向右移动一行(包含A列),所以是a1:a3区域 End Sub 7、 Sub 单元格区域引用() Range('B1').EntireColumn.ClearContents'清除B列的所有内容 Range('C1:C3').Offset(0, -2).Copy Range('b1')'采用offset偏移,0表示c1:c3区域向下移动零行,-2表示向左移动2列(不包含C列) End Sub 年底总结时间到了,你可能会用到合并工作表。 VBA合并工作表(内附源代码) 需要年度数据交互图表,可参考以下教程。 这就是你想要的EXCEL交互图表(动态图表) 交互图表之二(滚动条控件) EXCEL交互式图表之三(复选框) EXCEL交互式图表之四(单选框) EXCEL交互式图表之五(多个控件表格) EXCEL交互式图表之六(多个控件表格) |
|