当您只输入工作表()时,ActiveWorkbook或ThisWorkbook的默认范围是什么?对于那些不了解这些区别的人来说,当您希望在切换到不同的工作簿时运行宏时,它们在Excel 2013中尤为重要.
Tim*_*ams 16
通常在标准模块中,不合格的Worksheets()将引用ActiveWorkbook,除非它在ThisWorkbook模块中,在这种情况下它将引用包含的工作簿.
同样,标准模块中的不合格Me或Range()(或Cells()/ Rows())将引用ActiveSheet,但在工作表代码模块中将引用相应的工作表.
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()
Run Code Online (Sandbox Code Playgroud)
最简单的方式,以避免不必记住任何的这是一直完全限定任何Columns(),Me,Worksheets或Sheets参考.