本文为《别怕,Excel VBA其实很简单(第3版)》随书问题参考答案
如果想通过GetOpenFilename方法获得一个或多个扩展名为“Txt”或“Mp3”的文件名称,并将获得的名称写入A列中,可以将过程写为:
Sub 获取文件名()
Dim Fil As Variant, Wjlx As String
Wjlx = "TXT文本文件,*.txt,MP3音频文件,*.jpg"
Fil = Application.GetOpenFilename(filefilter:=Wjlx, FilterIndex:=2, Title:="选择", MultiSelect:=True)
If TypeName(Fil) <> "Boolean" Then '判断变量Fil是否为一 个逻辑值(单击取消按钮就返回逻辑值)
Range("A1").Resize(UBound(Fil), 1) = Application.WorksheetFunction.Transpose(Fil)
End If
End Su