目次

目的

  • 開いているワークブックの名前を取得したい。
  • 全てのワークブックの名前を取得したい。

目次まで戻る

その一例

  1. 「Book1.xls」でテストしてみます。
    Book1.xls
    Book1.xls
  2. 「Book1.xls」で下記マクロを実行してみます。
    Sub ワークブックの名前取得()
      Debug.Print ThisWorkbook.Name
    End Sub
  3. VBE のイミディエイトウィンドウへの出力結果です。
    Book1.xls
    Book1.xls
    1. 新規ブック作成直後、保存前は以下の出力になりました。
      「Book1」のみ。拡張子が付いていない。
      「Book1」のみ。拡張子が付いていない。

目次まで戻る

全てのワークブック

開いている全てのワークブックの名前を取得してみます。

  1. 「Book1.xls」「Book2.xls」「Book3.xls」が開いている状態でテストしてみます。
    Book1~3
    Book1~3
  2. 「Book1.xls」で下記マクロを実行してみます。
    Sub 開いている全てのワークブックの名前を取得()
    Dim a As Workbook
    For Each a In Workbooks
    Debug.Print a.Name
    Next
    End Sub
    1. Workbooks の中に全てのワークブックが入っているようです。
  3. VBE のイミディエイトウィンドウへの出力結果です。
    全てのワークブック名。
    全てのワークブック名。
    1. 下記マクロでも同じ結果になりました。
      Sub For_開いている全てのワークブックの名前を取得()
      Dim a
      For a = 1 To Workbooks.Count
      Debug.Print Workbooks(a).Name
      Next
      End Sub

テスト環境

  • Windows 10(64 ビット)
  • Microsoft Office Excel 2003

以上、閲覧ありがとうございました。

 

目次まで戻る

同じカテゴリの投稿(Excel VBA)

前後の投稿