我知道他们已经有很多类似的问题,但他们似乎都没有给我我想要的答案。
我有一个强大的功能,让我尝试自动化,以便VBA自动为我插入图片。我使用GetOpenFileName
来允许用户选择文件但是因为这只在excel中支持我已经将excel添加到引用列表中所以实际的命令是
Excel.Application.GetOpenFileName()
My Sub因此读到
Sub Image()
Dim Pict
Dim ImgFileFormat As String
ImgFileFormat = "Image Files (*.jpg; *.jpeg; *.png; *.bmp; *.gif; *.tif; *.tiff ), *.jpg; *.jpeg; *.png; *.bmp; *.gif; *.tif; *.tiff"
Pict = Excel.Application.GetOpenFilename(ImgFileFormat)
If Pict = False Then End
End Sub
我想要做的是从文件路径(Pict Variable)中提取文件的名称。
任何帮助都将不胜感激。
答案 0 :(得分:2)
也许这会对你有所帮助:
Function FunctionGetFileName(FullPath As String)
Dim StrFind As String
Do Until Left(StrFind, 1) = "\"
iCount = iCount + 1
StrFind = Right(FullPath, iCount)
If iCount = Len(FullPath) Then Exit Do
Loop
FunctionGetFileName = Right(StrFind, Len(StrFind) - 1)
End Function
答案 1 :(得分:2)
Pict = Dir(Pict)
应该只提供文件名。