【VBA】フルパスからパス部分(ファイル名以外)を取得する

フルパスからパス部分(ファイル名以外)を取得する方法は
複数あります!

ここでは私が可読性が良いと考える方法を
記載します!

PR

VBAコード

ここでは例として、
 ・デスクトップ配下のファイル「aiueo.txt」の
 ・パス部分(ファイル名以外)名を取得
します。

Option Explicit

Sub sample()
    
    Dim fso As Object
    Dim targetFile As String
    Dim folderPath As String
    
    'ファイルのパスを指定
    targetFile = "C:\Users\user\Desktop\aiueo.txt"
    
    Set fso = CreateObject("Scripting.FileSystemObject")

    'パス部分(ファイル名以外)名を取得
    folderPath = fso.GetParentFolderName(targetFile)
    
    MsgBox (folderPath)
    
    '後片付け
    Set fso = Nothing
    
End Sub

「FileSystemObject」の「GetParentFolderName」メソッドを用いて、フルパスからパス部分(ファイル名以外)を取得します(15行目)。

PR

実行結果

フルパスからパス部分(ファイル名以外)を取得できました。

実行結果
実行結果
PR

参考

上記のVBAコードで使用した以下の詳細は、公式サイトをご確認ください。

●「FileSystemObject」の「GetParentFolderName」メソッド