在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。 [Web开发]上篇—水晶报表导出为word/excel文件的代码 [Web开发]下篇—水晶报表导出为word/excel文件的代码 [Web开发]关于虚拟空间的System.Web.HttpUnhandledExceptio… [Web开发]在C#中如何对Excel单元格设置背景色以及对Range设… [网页制作]js将表格导出为word/excel文件的代码 [办公软件]Excel宏与函数的本质区别 [办公软件]excel菜单栏和右键菜单被屏蔽的解决办法 [办公软件]如何打印Excel的批注 [办公软件]Excel数据分列与合并的经验总结 [办公软件]总结Excel自动填充功能的高级技巧
|