我们看实际情况,现有5个表,顺序不一样,在vba代码中的第4行,我们使用了: Debug.Print Sheets(6).Range("a1") 代码中指定的是第6个表,而实际只有5个,最后VBA给出错误提示。

下村越界,一般是参数超范围(最大或者最小值) 同样的,假设把上面的6改为0,再次运行此代码,同样会出现此提醒, Debug.Print Sheets(0).Range("a1")
因为使用sheet(第几个表)的值是从1开始的。小于1,以及大于实际的工作表数,都会提示错误。
同样,使用sheet("工作表名")时,如果工作表名不存在,同样也会出现此提示,
Debug.Print Sheets("sheet3").Range("a1")
因为原工作表中,并没有sheet3这个表,只有一部,二部,三部,sheet1和sheet2
文件未打开时,运行VBA代码提示下标越界,如下图:workbooks处理的对象,是打开的Excel文件等,当打开对应的文件,运行代码时,可以在对应的sheet表单元格中添加内容值,但当关闭此文件时,再运行代码提示错误。
|
|
|
|