excel中select和activate函数有什么区别?
excel中select和activate的使用区别,下面我们通过实例来看看。
1、首先我们打开一个工作样表作为例子。
2、使用alt+f11组合快捷键进入vbe编辑器,插入一个新的模块,并在模块中输入以下代码:
Sub Test1() ActiveWorkbook.Sheets(Array(1, 2, 3)).Select '可以同时选择3个工作表
End SubSub Test2() ActiveWorkbook.Sheets(Array(1, 2, 3)).Activate '不能同时激活3个工作表,出现错误End Sub
3、两个方法都是作用于对象,但是也有所分别,对于工作表对象,select方法是后台操作,可以选择多个工作表,而activate则无法选择多个工作表激活,所以会报错。
4、select方法无法选择隐藏的工作表,例如我将sheet1工作表隐藏后选择它。 ActiveWorkbook.Sheets("sheet1").Select。而使用activate方法则可以激活隐藏的工作表,不会报错。
5、这是针对工作表而言,两个选择表的不同,而作用在工作表内的范围,两个方法也有不同的地方。首先select选择范围后,会默认激活区域中最左上角的单元格。如图所示,使用select选择了区域范围会有对应的范围提示框,其左上角单元格高亮无阴影显示。
6、也就是说select无法指定激活的单元格,而activate则可以,不过需要搭配着select使用,必须先使用select指定范围,然后使用activate指定单元格。
Range("a1:e10").Select
Range("a7").Activate
总结:
一、从功能上来说,Select代表选定对象,Activate代表激活对象。
二、从数量上来说,Select可以选定多个对象,Activate只能激活一个对象。
三、对于单个对象,Select和Activate是一样的。
四、Activate的对象必定在Select对象之中。当选定了多个对象时,其中某个对象必定是激活的对象。在已经Select的对象中,可以任意指定Activate的对象。如果Activate了当前Select对
象之外的对象,则相当于重新执行了一次Select并激活。
五、在每次重新Select之后,则系统会自动Activate其中的某个对象。