地区联动选择代码(联动区域)
《VBA代码解决方案》(10028096)这套教程是我最早推出的教程,目前已经是第三版修订了。这套教程定位于入门后的提高,在学习这套教程过程中,侧重点是要理解及掌握我的“积木编程”思想。要灵活运用教程中的实例像搭积木一样把自己喜欢的代码摆好。
这套教程共三册,一百四十七讲,内容覆盖较广,也是初级和中级间的过渡教程,改版后的内容主要是提供程序源码文件及代码修正为32位和64位兼用代码。今后一段时间会给大家陆续推出。今日的内容是第4讲:如何利用VBA代码选择工作表,选择连续区域及选择不连续区域
第四讲 如何利用VBA代码选择工作表,选择连续区域及选择不连续区域
这节主要是讲解各种选择在VBA中的实现,如果在EXCEL中,轻点鼠标就可以实现,那么在VBA中是如何实现的呢?我们看下面的代码。
1工作表的选择或者激活
1) Sheets("4").Activate.
语句说明:执行上述代码后,选择一个名为"4"的工作表:
备注:在工作表的操作时可以用select.
2工作表内区域的选择
2) Range("A1").Select
语句说明:执行上述代码后,选择一个名为"A1"的单元格:
备注:RANGE是单元格,也可以用CELLS(M,N)来代替,其中M是行,N是列。
3) Range("A1:G8").Select
语句说明:执行上述代码后,选择"A1:G8"的连续单元格:
展开全文
选择不连续的单元格:
Range("A1,B6,D9").Select
Range("A1,B6:B10,D9").Select
语句说明:执行上述代码后,选择不连续单元格:"A1,B6,D9","A1,B6:B10,D9"
lCELLS()的单元格表示方式是不能用这种表示方法的。
4) Cells.Select
语句说明:执行上述代码后,选择整个工作表.
l注意select和selection的区别,这里用的是select
5) Range("B2").CurrentRegion.Select
语句说明:执行上述代码后,选择当前单元格所在的区域(遇到空行/空列即止).
lCurrentRegion的意义是区域,CurrentRegion属性返回代表当前区域的Range对象。当前区域是指包含有当前单元格的由空行和空列围绕组成的区域。在该区域中,必须保证区域中的每一行或列中至少有一个存在数据的单元格。 但是,该属性在受保护的工作表中无效。
如何理解上面“由空行和空列围绕组成的区域”呢?我们看下面的实例,代码:
现在有下面的区域:
执行代码后:
上面深色区域是选择后的区域。它是由空格包围的。
6) Rows("1").Select
Columns("A").Select
或者:
ActiveCell.EntireRow.Select
ActiveCell.EntireColumn.Select
语句说明:执行上述代码后,选择行或列:
7) Columns("A:C").Select
Rows("1:5").Select
语句说明:执行上述代码后,选择选择相邻的多行/多列:
备注:使用"Columns/Rows":要注意和下面第八点的区别。
8) Range("A:A, C:C, E:F").Select
Range("1:1,5:6,9:9").Select
语句说明:执行上述代码后,选择不相邻的多行/多列:
l和选择相邻的多行/多列不同,使用"Range"而不是"Columns/Rows"。
9) Range("A1", Range("A1").End(xlDown)).Select
Range(ActiveCell, ActiveCell.End(xlDown)).Select
语句说明:执行上述代码后选择当前活动单元格向下至最后一个空或者非空的单元格:
备注:注意理解End(xlDown)的意义,相当于CTRL+↓
今日内容回向:
1 选择包括哪些内容?
2 如何理解CurrentRegion含义?
本讲内容参考程序文件:VBA代码解决方案(1-19).xlsm
【分享成果,随喜正能量】我们不可能自己不犯错,就如同你不可能不允许别人犯错,每个人都不是圣人,但即便是圣人,他也有犯错的时候。内观和宽容都是修行之道。。
我20多年的VBA实践经验,全部浓缩在下面的各个教程中: