タイトルバー、ステータスバーの制御

タイトルバーやステータスバーもマクロから操作できます。

Excelのタイトルバー自身は、ApplicationオブジェクトのCaptionプロパティで設定できます。細かく表示変更するには向かないので、主に処理モードや処理主体の名称を表示します。
処理中のワークブック名の表示は省略できず、Captionプロパティで設定した右側に表示されます。


'***************************************************************************************************
'   Excelのタイトルバーを制御するサンプル                           Module1(Module)
'
'   作成者:井上治  URL:http://www.ne.jp/asahi/excel/inoue/ [Excelでお仕事!]
'***************************************************************************************************
'変更日付 Rev  変更履歴内容------------------------------------------------------------------------>
'03/06/07(1.00)新規作成
'20/02/23(1.10)記述標準化準拠修正(サンプルブック無し)
'***************************************************************************************************
Option Explicit

'***************************************************************************************************
'   ■■■ ワークシート側からの呼び出し処理 ■■■
'***************************************************************************************************
'* 処理名 :SetExcelTitleBar
'* 機能  :Excelのタイトルバーを制御するサンプル
'---------------------------------------------------------------------------------------------------
'* 返り値 :(なし)
'* 引数  :(なし)
'---------------------------------------------------------------------------------------------------
'* 作成日 :2003年06月07日
'* 作成者 :井上 治
'* 更新日 :2020年02月23日
'* 更新者 :井上 治
'* 機能説明:
'* 注意事項:
'***************************************************************************************************
Sub SetExcelTitleBar()
    '-----------------------------------------------------------------------------------------------
    Dim strTitle As String                                          ' タイトル
    Dim vntInput As Variant                                         ' 入力WORK
    ' InputBoxで指定を受ける
    vntInput = Application.InputBox("表示する内容を指定して下さい。", , Application.Caption)
    ' キャンセルか
    If VarType(vntInput) = vbBoolean Then
        ' キャンセル時は元に戻す
        Application.Caption = vbNullString
    Else
        strTitle = vntInput
        ' 指定文字列を表示
        Application.Caption = strTitle
    End If
End Sub

'----------------------------------------<< End of Source >>----------------------------------------

ステータスバーは、ApplicationオブジェクトのStatusBarメソッドで表示されます。こちらは処理中の状況表示やエラーステータスの表示に便利です。

'***************************************************************************************************
'   Excelのステータスバーを制御するサンプル                         Module2(Module)
'
'   作成者:井上治  URL:http://www.ne.jp/asahi/excel/inoue/ [Excelでお仕事!]
'***************************************************************************************************
'変更日付 Rev  変更履歴内容------------------------------------------------------------------------>
'03/06/07(1.00)新規作成
'20/02/23(1.10)記述標準化準拠修正(サンプルブック無し)
'***************************************************************************************************
Option Explicit

'***************************************************************************************************
'   ■■■ ワークシート側からの呼び出し処理 ■■■
'***************************************************************************************************
'* 処理名 :SetExcelStatusBar
'* 機能  :Excelのステータスバーを制御するサンプル
'---------------------------------------------------------------------------------------------------
'* 返り値 :(なし)
'* 引数  :(なし)
'---------------------------------------------------------------------------------------------------
'* 作成日 :2003年06月07日
'* 作成者 :井上 治
'* 更新日 :2020年02月23日
'* 更新者 :井上 治
'* 機能説明:
'* 注意事項:
'***************************************************************************************************
Sub SetExcelStatusBar()
    '-----------------------------------------------------------------------------------------------
    Dim strTitle As String                                          ' タイトル
    Dim vntInput As Variant                                         ' 入力WORK
    ' InputBoxで指定を受ける
    vntInput = Application.InputBox("表示する内容を指定して下さい。", , Application.StatusBar)
    ' キャンセルか
    If VarType(vntInput) = vbBoolean Then
        ' キャンセル時は元に戻す
        Application.StatusBar = False
    Else
        strTitle = vntInput
        ' 指定文字列を表示
        Application.StatusBar = strTitle
    End If
End Sub

'----------------------------------------<< End of Source >>----------------------------------------

特に一括系の処理では、カーソルは砂時計にできますが、処理自体がどこまで進んだかが判らず「フリーズ」などの不安になることを抑制する効果があります。処理件数や状況(キー項目等)を表示させて「進んでいる」ことを表記させて下さい。