vba获取当前工作簿的文件名(VBA文件处理04获取文件名和扩展名)

要获取文件名和扩展名,可以使用VBA语句和FSO对象模型两种方式,我来为大家科普一下关于vba获取当前工作簿的文件名?下面希望有你要的答案,我们一起来看看吧!

vba获取当前工作簿的文件名(VBA文件处理04获取文件名和扩展名)

vba获取当前工作簿的文件名

要获取文件名和扩展名,可以使用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

运行上述代码后,按照打开的对话框选择目标文件后,即可显示下面的信息框:

2 使用FSO对象模型拆分文件名和扩展名

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-

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页