This little bit of code I made will return different parts of a file like Drive, Path, Filename, extension Hope you find it usfull.

Code:
Enum FileParts
    vDrive = 1
    vPath = 2
    vFilename = 3
    vExtension = 4
End Enum

Private Function ReturnFileParts(oFilePart As FileParts, Filename As String) As String
Dim sPos As Integer
Dim ePos As Integer
    
    Select Case oFilePart
        Case vDrive
            sPos = InStr(1, Filename, ":", vbBinaryCompare)
            If (sPos > 0) Then
                'Extract drive
                ReturnFileParts = Left$(Filename, sPos - 1)
            End If
        Case vPath
            'Get first slash
            sPos = InStr(1, Filename, "\", vbBinaryCompare)
            'Get end slash
            If (sPos > 0) Then
                ePos = InStrRev(Filename, "\", Len(Filename), vbBinaryCompare)
            End If
            If (ePos > 0) Then
                'Return Path
                ReturnFileParts = Mid$(Filename, sPos + 1, ePos - sPos - 1)
            End If
        Case vFilename
            'Get end slash
            sPos = InStrRev(Filename, "\", Len(Filename), vbBinaryCompare)
            If (sPos > 0) Then
                'Return filename
                ReturnFileParts = Mid$(Filename, sPos + 1)
            End If
        Case vExtension
            'Find .
            sPos = InStr(1, Filename, ".", vbBinaryCompare)
            If (sPos > 0) Then
                'Return extension
                ReturnFileParts = Mid$(Filename, sPos + 1)
            End If
    End Select
    
End Function

Private Sub Command1_Click()
Dim File As String
    'Example
    File = "C:\SomeFolder\Level1\Test.txt"
    MsgBox ReturnFileParts(vDrive, File)        'Return C
    MsgBox ReturnFileParts(vPath, File)         'Return SomeFolder\Level1
    MsgBox ReturnFileParts(vFilename, File)    'Return Test.txt
    MsgBox ReturnFileParts(vExtension, File)   'Return txt
End Sub