excel – 工作表和单元格和范围的默认范围是什么?

当您只输入工作表()时,ActiveWorkbook或ThisWorkbook的默认范围是什么?对于那些不了解这些区别的人来说,当您希望在切换到不同的工作簿时运行宏时,它们在Excel 2013中非常重要.
最佳答案
在标准模块中,不合格的Worksheets()将始终引用ActiveWorkbook.在ThisWorkbook模块中,隐式限定符是Me,它将引用包含的工作簿.

同样,标准模块中的非限定Range()或Cells()(或Rows()/ Columns())将引用ActiveSheet,但在工作表代码模块中,隐式限定符为Me,并将引用相应的工作表.

Unqualified...       Where              Implicit Qualifier
--------------       --------------     -------------------
Worksheets(),        ThisWorkbook       Containing workbook (Me)
Sheets()             Any other module   Active workbook (via [_Global])

Range(), Cells(),    Sheet module       Containing sheet (Me)
Rows(), Columns(),   Any other module   Active sheet (via [_Global])
Names()

避免必须记住任何这一点的简单方法是始终完全限定任何工作表,表格,范围,单元格或名称参考.

在该模块的代码隐藏中引用ThisWorkbook时,或者在该模块的代码隐藏中引用Sheet1时,使用Me限定成员调用.

转载注明原文:excel – 工作表和单元格和范围的默认范围是什么? - 代码日志