我听说过很多关于.Select在Excel VBA 中使用的可理解的憎恶,但我不确定如何避免使用它.我发现如果我能够使用变量而不是Select函数,我的代码将更加可重用.但是,ActiveCell如果不使用,我不确定如何引用事物(如等)Select.
我发现这篇关于范围的文章和这个例子关于不使用select的好处却找不到怎么样的东西?
您能否帮助理解为什么此代码在旧版本的 Excel 中有效,但在 Excel 2013 中无效?行replace:=false被忽略。是否与一些中心设置有关?应该修改什么?
Sub test()
Dim i
Dim n
n = InputBox("type n")
For i = 1 To n
If i = 1 Then ThisWorkbook.Sheets(i).Select
If i > 1 Then ThisWorkbook.Sheets(i).Select Replace:=False
Next i
End Sub
Run Code Online (Sandbox Code Playgroud)