FileSystemObject

ファイル名と拡張子を分けて取得する【FileSystemObject】【ExcelVBA】

構文

Object.GetExtensionName(Path As String)

Object.GetBaseName(Path As String) 

Path・・・・ファイル名と拡張子を取得したいフルパスを指定します
戻り値 ・・・・・String型 Pathからファイル名、拡張子を返却します
GetExtensionNameメソッドはGetBaseNameはフルパスからファイル名もしくは拡張子を取得します。

GetExtensionName/GetBaseNameのサンプルコード

Public Sub sample()

    '■FileSystemObjectの宣言
    Dim fso As Object: Set fso = CreateObject("Scripting.FileSystemObject")
    
    '■拡張子のみ取得
    Debug.Print fso.GetExtensionName("C:\vba\sample.txt")   'txt
    Debug.Print fso.GetExtensionName("sample.txt")          'txt

    '■拡張子なしのファイル名取得
    Debug.Print fso.GetBaseName("C:\vba\sample.txt")        'sample
    Debug.Print fso.GetBaseName("sample.txt")               'sample


    '■フォルダのみ指定した場合
    Debug.Print fso.GetBaseName("C:\vba")                   '"vba"
    Debug.Print fso.GetExtensionName("C:\vba")              '""


End Sub

注意点

関連記事

コメント

タイトルとURLをコピーしました