【Excel VBA】ウィンドウのタイトルを設定・取得する(Caption)

はじめに

今回は、ウィンドウのタイトルを設定・取得する方法を解説します。
ウィンドウのタイトルを設定する2種類の方法を、基本的な構文から実践的なサンプルコードを交えて掲載しています。

この記事を読むメリット
  • ウィンドウのタイトルを設定・取得する方法が分かります。
  • ウィンドウのタイトルとは何か、設定の2種類の方法を詳しく解説しています。
  • コピペで使える実践的なサンプルコードを掲載しています。

前提

ウィンドウのタイトルとは

ウィンドウのタイトルとは、以下赤枠箇所を指します。

タイトルは、「ウィンドウのタイトル」 + 「-」 + 「アプリケーション名」という構成で表示されます。
規定値としては、「ブック名 – Excel」でとなっています。

ウィンドウのタイトル

保存済みブックの場合は、ブック名に拡張子が付与されます。

基本情報

Captionプロパティ

ウィンドウのタイトルを設定するには、Applicationオブジェクト 及び WindowオブジェクトのCaptionプロパティを使用します。
Captionプロパティは、設定だけでなく「取得」も可能です。

オブジェクトによる設定箇所の違い

冒頭でApplicationオブジェクト 及び WindowオブジェクトのCaptionプロパティを使用すると説明しましたが、指定するオブジェクトにより、設定箇所が異なります。

設定できる箇所は以下の通りです。

Captionプロパティ – 設定箇所

Captionプロパティでタイトルを変更しても、ブック名は変更されません。

構文

構文

‘ アプリケーション箇所のタイトルを変更する
ApplicationObject.Caption = 設定値

‘ ブック名箇所のタイトルを変更する
WindowObject.Caption = 設定値

設定値

設定したいタイトルの文字列を指定します。

規定値に戻す場合は、「””」(ブランク)を指定します。

サンプルコード

ウィンドウのタイトルを変更する

サンプルコード
Public Sub changeWindowCaption()

    ' ブック名箇所のタイトルを変更する
    ActiveWindow.Caption = "vba-hack Sample"

    ' アプリケーション箇所のタイトルを変更する
    Application.Caption = "りゅうのExcel"
End Sub

ウィンドウのタイトルを取得する

サンプルコード
Public Sub getWindowCaption()

    ' A1セルにウィンドウのタイトルを書き出し
    Range("A1") = ActiveWindow.Caption

    ' A1セルにアプリケーションのタイトルを書き出し
    Range("A2") = Application.Caption
End Sub

すべてのウィンドウタイトルを規定値に戻す

サンプルコード
Public Sub resetWindowCaption()
    Dim win As Window   ' Windowオブジェクト

    ' すべてのウィンドウをループ
    For Each win In Windows

        ' タイトルを規定値に戻す
        win.Caption = ""
    Next win
End Sub

最後に

今回は、ウィンドウのタイトルを変更する方法について解説しました。

本記事が皆さんのお力になれば幸いです!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

大手外資系コンサルティングファーム勤務。ExcelVBA歴は8年。金融関係のプロジェクトにて約100万レコードを処理するマクロの開発実績あり。ExcelVBAの基礎・応用情報を発信中。

コメント

コメントする

CAPTCHA