オフィス・ブール ロゴ
【レスキュー連絡先】
代表 : 末永 尚登
TEL: 070-4087-0025 FAX:095-893-6090

【 VBAパーツ 】

4.フルパスから必要な情報を抜き出す

前者はフルパスからファイル名を除いたパスを取得するコードです。
後者はフルパスからファイル名だけを取り出すコードです。
ですが、どちらもDir()関数を使った方が簡単に取り出せます。

Function GetFileName(FilePath As String) As String
'フルパスからファイル名を取り出す

    Dim dlmPos As Long
    Dim bInclude As Boolean

    
    dlmPos = InStrRev(FilePath, "\")
    bInclude = InStrRev(FilePath, ".") > dlmPos
    If dlmPos > 0 Then
        If bInclude Then
            GetFileName = Right$(FilePath, Len(FilePath) - dlmPos)
	    Exit Function
        End If
    End If
    GetFileName = FilePath
    
End Function

Public Sub Sample_1()
'Dir()関数を使ってフルパスからファイル名を取り出す

    Msgbox Dir(FilePath)

End Sub
Public Function GetFolderPath(FilePath As String) As String
'フルパスからフォルダパスのみを取り出す

    Dim dlmPos As Long
    Dim FileName As String
    Dim bInclude As Boolean
    
    
    dlmPos = InStrRev(FilePath, "\")
    bInclude = InStrRev(FilePath, ".") > dlmPos
    If dlmPos > 0 Then
        If bInclude Then
            FileName = Right$(FilePath, Len(FilePath) - dlmPos)
            GetFolderPath = Left(FilePath, Len(FilePath) - Len(FileName))
            Exit Function
        End If
    End If
    GetFolderPath = FilePath
    
End Function

Public Sub Sample_2()
'Dir()関数を使ってフルパスからフォルダパスのみを取り出す

    Msgbox Replace(FilePath, Dir(FilePath), "")

End Sub


 


オフィス・ブール ロゴ 所在地:長崎県長崎市  代表:末永尚登
E-mail: suenaga@officeboole.com   TEL: 070-4087-0025  FAX: 095-893-6090