我听说过很多关于.Select在Excel VBA 中使用的可理解的憎恶,但我不确定如何避免使用它.我发现如果我能够使用变量而不是Select函数,我的代码将更加可重用.但是,ActiveCell如果不使用,我不确定如何引用事物(如等)Select.
我发现这篇关于范围的文章和这个例子关于不使用select的好处却找不到怎么样的东西?
我有以下简单的代码来关闭一系列打开的工作簿。我刚刚切换到Excel 2013,在此新版本中,对于未隐藏的每个工作簿,我的屏幕在Excel中始终闪烁一个白色窗口。
如何使烦人的屏幕闪烁关闭?
Sub CloseFiles()
On Error Resume Next
Application.ScreenUpdating = False
Application.StatusBar = "Please wait while files are closed."
Application.DisplayAlerts = False
Dim rCell As Range
For Each rCell In Range("Files")
Application.StatusBar = "Closing file " & rCell.Value
If rCell.Value <> "" Then
Windows(rCell.Value).Visible = True
Workbooks(rCell.Value).Close SaveChanges:=True
End If
Next rCell
Application.WindowState = xlMaximized
Windows("Filename.xlsm").Activate
Application.DisplayAlerts = True
Application.StatusBar = False
Application.ScreenUpdating = True
End Sub
Run Code Online (Sandbox Code Playgroud)