VBA GetFileName(FSO)でファイル名を取得する

Written by

Editorial Team

Reviewed by

Steve Rynearson

Translated by

masahiro yoshida

Last updated on 5月 12, 2022

このショートチュートリアルでは、FileSystemObjectのGetFileNameメソッドの使用方法を説明します。

VBAのFileSystemObjectでファイル名を取得する

このレッスンでは、FileSystemObjectを使用します。使用するには、VBスクリプトのランタイムライブラリへの参照を設定する必要があります。詳しくはこちらをご覧ください。

任意のパスからファイル名を取得するためには、以下のようにします。

Sub FSOGetFileName()
    Dim FileName As String
    Dim FSO As New FileSystemObject
    Set FSO = CreateObject("Scripting.FileSystemObject") 

    'ファイル名を取得
    FileName = FSO.GetFileName("C:\ExamplePath\ExampleFile.txt")
    
    'ファイル名を取得(拡張子なし)
    FileNameWOExt = Left(FileName, InStr(FileName, ".") - 1)

End Sub

FileName変数には「ExampleFile.txt」、FileNameWOExt変数には「ExampleFile」という拡張子を除いた値が入ります。

拡張子なしでファイル名を取得する

上記のように、拡張子なしのファイル名を取得するには、次のようなコードを使用します。

FileNameWOExt = Left(FileName, InStr(FileName, ".") - 1)
vba-free-addin

VBAコード例アドイン

当サイトで紹介しているすべてのコード例に簡単にアクセス可能。

メニューから選択してクリックするだけで、コードがモジュールに直接挿入されます(.xlam アドイン)。

(インストール不要!)

無料ダウンロード

VBAコード例に戻る