在我们写VBA代码时,对象能否自动弹出方法或属性,会影响到到代码的效率。
以下面的代码为例:
第一段代码在输入『.』后自动弹出方法属性列表
第二个截图在输入『.』不自动弹出方法属性列表
这种情况,会是大多数初学者的疑惑。
原因是看计算机能不能识别对象形态,如果能识别,在输入『.』会自动弹出,否则无法自动弹出。
图一,已经声明c为range对象(单元格或者单元格区域),计算机只能把c识别为range对象。
图二,没有声明变量,因为worksheets()可返回的对象,有好几种,只有Object、Variant能用来定义该项属性(Item)的对象型态,供Item返回多种不尽同类的物件给worksheets。其对象或者父对象为非明确形态的对象,所以计算机无法识别。
如果想要让对象自动弹出方法或者属性,必须先要声明变量。在编码过程中有的时候,为了少写几句代码,会忽略声明变量,而导致这样的疑惑。
以上就是VBA在输入对象后不提示属性的原因。
针对VBA代码,是否有必要强制声明变量,圈内各种声音都有,有的支持,有的反对。
具体情况还要结合自己的逻辑能力和对代码的熟悉程度来看待是否有必要强制声明变量。
有的同学说最近写的都是VBA相关,接受起来有点难度,具体关于函数和图表的知识可在公众号主页下方查看历史消息。ID:data--tech.