ステータスバーに進行状況を表示して元に戻す
StatusBarへ文字列を指定して表示し、処理終了時は実行前の表示内容と表示状態を復元します。
実行前に確認
- StatusBarはExcel全体に影響します。強制停止すると後始末が実行されないため、通常の終了経路で戻してください。
- 公開前にコードと公式仕様を照合していますが、Excel実機での動作は未確認です。コピーしたブックで試してください。
1サンプルコード
Option Explicit
Sub PracticeAdvanced8019()
Dim oldStatus As Variant
Dim oldVisible As Boolean
oldStatus = Application.StatusBar
oldVisible = Application.DisplayStatusBar
On Error GoTo Failed
Application.DisplayStatusBar = True
Application.StatusBar = "確認処理を実行中です"
MsgBox "画面下のステータスバーを確認してください"
CleanUp:
Application.StatusBar = oldStatus
Application.DisplayStatusBar = oldVisible
Exit Sub
Failed:
MsgBox Err.Description, vbExclamation
Resume CleanUp
End Sub図で見る操作の流れ
イメージ図この例の準備と結果を示す模式図です。
準備
練習用ブックの標準モジュールにコードを配置
操作
StatusBarへ文字列を指定して表示し、処理終了時は実行前の表示内容と表示状態を復元します。
結果
メッセージを閉じると元のステータスバーに戻ります。
StatusBarはExcel全体に影響します。強制停止すると後始末が実行されないため、通常の終了経路で戻してください。
コードの処理を説明する模式図です。実際の画面や実行結果を撮影したものではありません。
使い方・実行手順を確認する4つの手順で、コードの使い方を確認できます
- 1
練習用のマクロ有効ブックを開き、Alt+F11→[挿入]→[標準モジュール]へコードを貼り付けます。
- 2
PracticeAdvanced8019を実行します。
- 3
StatusBarへ文字列を指定して表示し、処理終了時は実行前の表示内容と表示状態を復元します。
- 4
メッセージを閉じると元のステータスバーに戻ります。