構文
Object.GetFileName(pathspec)
pathspecに指定したパスからファイル名を取得します。
GetFileNameメソッドのサンプルコード
Public Sub sample()
'■FileSystemObjectの宣言
Dim fso As Object: Set fso = CreateObject("Scripting.FileSystemObject")
'■拡張子有で指定したら拡張子含む、無しなら含まない
Debug.Print fso.GetFileName("C:\vba\sample.txt") 'sample.txt
Debug.Print fso.GetFileName("C:\vba\sample") 'sample
'■実は最後の\の右部分を取得しているだけである
' ファイルが存在するかどうかは関係ない
Debug.Print fso.GetFileName("AAA\BBB\CCC") 'CCC
Debug.Print fso.GetFileName("AAA") 'AAA
End Sub
注意点
- fso.GetFileName(“AAA\BBB\CCC”)でわかるようにファイルやフォルダの存在チェックはしません。
- あくまでも最後の\(パス区切り文字)の右部分を取得しているだけである。
- オブジェクト型変数(文字列ではない)を渡すと、実行時エラーが発生します。
実行時エラー438「オブジェクトは、このプロパティまたはメソッドをサポートしていません。」



コメント