【发布时间】:2019-05-29 09:20:23
【问题描述】:
这应该很容易。我想减少代码worksheets("Sheet1").activate 的使用,因为它很麻烦而且经常出错,但是我尝试过的所有尝试都不起作用。到目前为止,我已经使用了 set worksheet 选项和 with worksheet 选项,但除非我严格在 Excel 上的工作表 1 上,否则代码不会执行。
我尝试了此链接中列出的一些选项,但没有一个有效:How to avoid using Select in Excel VBA。我真的开始认为我需要一直使用激活。
例如这样的代码:
Sub test()
Dim Cols As integer
Cols = Worksheets("Sheet1").Range(Cells(1, 1), Cells(1, 1).End(xlToRight)).Count
End sub
我希望即使我不在 Sheet1 上也会执行此代码,因为我已经明确定义了必须在其中执行它的工作表。但是,除非我在该工作表上,否则代码不起作用。作为背景信息,我在 VBA 模块部分的子程序下运行我的大部分代码。
【问题讨论】: