Vba を使用してワークブック名を取得する方法 (例付き)


VBA で次のメソッドを使用して、Excel ブックの名前を取得できます。

方法 1: アクティブなワークブック名を取得する

 Function GetWorkbookName() As String
GetWorkbookName = ActiveWorkbook.Name
End Function

この関数は、 my_vba_workbook.xlsmなどのアクティブなワークブックの名前を返します。

方法 2: 拡張子なしでアクティブなブック名を取得する

 Function GetWorkbookName() As String
GetWorkbookName = Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, " . ") - 1)
End Function

この関数は、 my_vba_workbookなどの拡張子を除いたアクティブなワークブックの名前を返します。

次の例は、 my_vba_workbook.xlsmという現在アクティブな Excel ブックで各メソッドを実際に使用する方法を示しています。

例 1: アクティブなワークブックの名前を取得する

次の関数を作成して、アクティブなワークブックの名前を取得できます。

 Function GetWorkbookName() As String
GetWorkbookName = ActiveWorkbook.Name
End Function

次に、セルA1に次の数式を入力して、アクティブなブックの名前を取得します。

 =GetWorkbookName()

次のスクリーンショットは、この式を実際に使用する方法を示しています。

数式がmy_vba_workbook.xlsmを返すことがわかります。これは、使用している現在アクティブなワークブックの名前です。

: 拡張子.xlsmは、マクロが有効な Excel ワークブックを表します。

例 2: 拡張子なしでアクティブなワークブック名を取得する

次の関数を作成して、拡張子なしでアクティブなワークブックの名前を取得できます。

 Function GetWorkbookName() As String
GetWorkbookName = Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, " . ") - 1)
End Function

次に、セルA1に次の数式を入力して、アクティブなブックの名前を取得します。

 =GetWorkbookName()

次のスクリーンショットは、この式を実際に使用する方法を示しています。

この数式がmy_vba_workbookを返すことがわかります。これは、現在アクティブなワークブックの名前であり、拡張子.xlsmを除いたものです。

: Left関数とInstr関数を使用すると、ワークブック名からドットの左側にあるすべての文字を抽出できます。

追加リソース

次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。

VBA を使用してフォルダーを作成する方法
VBAを使ってフォルダを削除する方法
VBAを使用してファイル名を変更する方法
VBAを使用してファイルが存在するかどうかを確認する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です