エクセルバージョン
マイクロソフト365
本日はエクセルでたまに見かけるシートの左下に表示される、Applicationオブジェクトのステータスバープロパティの作成方法についてです!
【完成後】
それではいってみましょう!
StatusBarプロパティ
概要
・シートの左下のステータス バーのテキストを設定または返します。
・値の取得および設定が可能です。
構文
Application.StatusBar=値
戻り値
Variant
サンプル
1秒ごとに表示させる
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | Sub StatusBarSample1() '変数 Dim i As Integer '繰り返し処理(For~Next) For i = 1 To 3 '1秒待つ Application.Wait Now + TimeValue("00:00:01") 'ステータスバーに表示 Application.StatusBar = i Next Application.StatusBar = "FINISH" MsgBox "FINISH" 'ステータスバーを非表示 Application.StatusBar = False End Sub |
%で表示させる
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | Sub StatusBarSample2() '変数 Dim i As Integer '繰り返し処理(For~Next) For i = 1 To 1000 'ステータスバーに表示 Application.StatusBar = Format(i * 0.1, "#.00") & "%" Next Application.StatusBar = "終了" MsgBox "FINISH" 'ステータスバーを非表示 Application.StatusBar = False End Sub |
ステータスバーの非表示
エラーでステータスバーの表示が消えない場合は下記を実行します。
1 2 3 4 5 | Sub ステータスバー非表示() Application.StatusBar = False End Sub |
まとめ
プログレスバーをVBAで作成するのは結構面倒なので、ユーザーに進捗状況を表示させるときはステータスバーを表示させることによって時短ができます。
以上です。