更改状态栏的更新行为

时间:2013-06-04 06:01:38

标签: excel vbscript

我已经在VBScript中编写了一个Excel,以便我的操作显示在Excel工作表的左下角并且工作正常但问题是相同的操作也会显示在打开的其他Excel工作表中,但是与我的操作正在执行的Excel工作表无关。

Status bar text

如何避免其他Excel工作表显示相同的操作?

1 个答案:

答案 0 :(得分:0)

问题是StatusBar是全局的,并不是特定于每个工作簿。

但是,您可以使用Workbook_ActivateWorkbook_Deactivate事件来避免此问题。将以下代码放在工作簿的ThisWorkbook模块中:

Private mVarOldStatusBar As Variant

Private Sub Workbook_Deactivate()
    mVarOldStatusBar = Application.StatusBar
    Application.StatusBar = False
End Sub

Private Sub Workbook_Activate()
    If mVarOldStatusBar <> "" Then _
        Application.StatusBar = mVarOldStatusBar
End Sub