在Excel中,我们都知道,可以通过VBA引用各种对象的名称,从而,利用名称,就可以设置该对象的各种属性,诸如工作表、选择的区域或单元格的各种属性等。
本文,为您介绍With的语句使用方法;
①With语法
With 对象名称 '语句 End With
②语句介绍
对象名称的使用,必须先定义;即在With语句之前先定义,这样,才能正确的引用,否则,将导致莫名的错误!
③语句使用实例
Set MySheet = ThisWorkbook.Sheets(1) With MySheet .Cells(1, 1) = 1 .Cells(1, 2) = 2 .Cells(1, 3) = 3 .Cells(1, 4) = 4 .Cells(1, 5) = 5 .Cells(1, 6) = 6 End With
上述代码解释:先定义一个对象名称:Set MySheet = ThisWorkbook.Sheets(1)
然后,通过With引用该对象的名称;接下来,就是针对该对象的各种属性进行设置;.Cells(1, 1) = 1相当于设置A1=1;.Cells(1, 2) = 2相当于设置B1=2…依此类推!
上述的代码,其实就等于:
ThisWorkbook.Sheets(1).Cells(1, 1) = 1 ThisWorkbook.Sheets(1).Cells(1, 2) = 2 ThisWorkbook.Sheets(1).Cells(1, 3) = 3 ThisWorkbook.Sheets(1).Cells(1, 4) = 4 ThisWorkbook.Sheets(1).Cells(1, 5) = 5 ThisWorkbook.Sheets(1).Cells(1, 6) = 6
既然两种代码都一样,为什么还要使用With语句呢,为什么不直接使用ThisWorkbook.Sheets(1).的方式直接调用呢?
原因在于:
一方便输入,可以省去重复输入同一个名称的麻烦;
二更在于,代码的执行效益高;第一种代码的执行效益远远比第二种代码的执行效益高。
就因为这样,一图方便,二图效益,所以,很多场合的VBA代码,都喜欢使用with。 |