如何解决获取文件扩展名 vba
我需要将文件的扩展名存储在 VBA 中的变量中, 我现在所做的是
file= Hello.pdf
extension = split(file,".")(1)
但有时我的文件可能类似于 file = 1.Filename.pdf
,所以我的扩展变量不再起作用...
有人可以帮我找到一个解决方案,即使它们是多个“.”,也可以始终从任何文件名中获取扩展名。在里面。
我有一个想法是从右到左读取并在读取“。”时获取字符串。但我是 vba 新手,不知道从哪里开始......
解决方法
试试这个
Sub Get_Extension()
Dim fso As Object,sFile As String
Set fso = CreateObject("Scripting.FileSystemObject")
sFile = "Hello.pdf"
Debug.Print Right(sFile,Len(sFile) - InStrRev(sFile,"."))
Debug.Print fso.GetExtensionName(sFile)
Debug.Print Split(sFile,".")(UBound(Split(sFile,".")))
End Sub
要获取文件名,您可以使用它
Sub Get_Filename()
Dim v,fso As Object,sFile As String
Set fso = CreateObject("Scripting.FileSystemObject")
sFile = "1.Hello.pdf"
v = Split(sFile,".")
ReDim Preserve v(0 To UBound(v) - 1)
Debug.Print Join(v,".")
Debug.Print fso.GetBaseName(sFile)
Debug.Print Left(sFile,(InStrRev(sFile,".",-1,vbTextCompare) - 1))
Debug.Print Left(sFile,InStrRev(sFile,".") - 1)
End Sub
,
试试,
Dim vFn As Variant
file = "Hello.pdf"
vFn = Split(file,".")
extension = vFn(UBound(vFn))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。