Excel VBA打开文件选择框、取得文件全路径与文件名

2019-02-22  本文已影响0人  舍无由

2019年2月22日摘自https://blog.csdn.net/henryghx/article/details/26973319,舍无由深表感谢。
2019年2月22日舍无由作了小改动,在Excel 2013中亲测可用。

Option Explicit '所有变量必须先定义后使用,强制显式声明模块中的所有变量
'VBA打开文件选择框、取得文件全路径与文件名的代码。
Sub selectExcelfile()
    Dim fileNameObj As Variant
    Dim aFile As Variant                            '数组,提取文件名fileName时使用
    
     '打开文件对话框返回的文件名,是一个全路径文件名,其值也可能是False,因此类型为Variant
    Dim fullName As String
    Dim fileName As String                         '从FileName中提取的路径名
 
    Dim i As Integer
    Dim ExcelFullPathAndName As String, workbookName As String
 
    fileNameObj = Application.GetOpenFilename("Excel 文件 (*.xls*),*.xls*")
    '调用Windows打开文件对话框
    
    If fileNameObj <> False Then                   '如果未按“取消”键
        aFile = Split(fileNameObj, "\")
        
        fileName = aFile(UBound(aFile))            '数组的最后一个元素为文件名
        fullName = aFile(0)
        For i = 1 To UBound(aFile)                 '循环合成全路径
            fullName = fullName & "\" & aFile(i)
        Next
        
    Else
        MsgBox "您已取消,未选择文件!"
        End
    End If
    '得到Excel全路径
    ExcelFullPathAndName = fullName
    '得到Excel文件名
    workbookName = fileName
    MsgBox "您选择的全路径式文件名是: " & vbCr & ExcelFullPathAndName
    
End Sub

Excel 2013中,运行效果如下:

上一篇下一篇

猜你喜欢

热点阅读