要獲取檔案名和副檔名, 可以使用VBA語句和FSO物件模型兩種方式。
1 使用VBA語句拆分檔案名和副檔名Function SplitFilename(ByVal sFileName As String) As Variant
Dim aRet(1 To 3) As String
Dim i As Integer
i = InStrRev(sFileName, "")
aRet(1) = Left(sFileName, i)
sFileName = Mid(sFileName, i + 1)
i = InStrRev(sFileName, ".")
aRet(2) = Left(sFileName, i - 1)
aRet(3) = Mid(sFileName, i + 1)
SplitFilename = aRet
End Function
Sub 分離檔案名()
Dim sFileName As String, aRet As Variant
sFileName = Application.GetOpenFilename(, , "選擇原始檔案")
If sFileName = "False" Then Exit Sub '用戶選擇"取消"則退出程式
aRet = SplitFilename(sFileName)
MsgBox "路徑:" & aRet(1) & vbNewLine & _
"檔案名:" & aRet(2) & vbNewLine & _
"副檔名:" & aRet(3)
End Sub
運行上述代碼後,
按照打開的對話方塊選擇目的檔案後,
即可顯示下面的資訊框:
Sub FSO分離檔案名()
Dim fso As New FileSystemObject, sFileName As String
Dim str1 As String
sFileName = Application.GetOpenFilename(, , "選擇原始檔案")
If sFileName = "False" Then Exit Sub
MsgBox "路徑:" & fso.GetParentFolderName(sFileName) & vbNewLine & _
"檔案名:" & fso.GetBaseName(sFileName) & vbNewLine & _
"副檔名:" & fso.GetExtensionName(sFileName)
Set fso = Nothing
End Sub
-End-