介紹如何用VBA選擇文件和用VBA打開文件。
點擊打開文件會彈出一個windows文件打開對話框,在EXCEL中VBA怎麼實現這個功能?
Sub SelectFile()
Dim FileName As Variant
'打開文件對話框返回的文件名,是一個全路徑文件名,其值也可能是False,因此類型爲Variant
Dim sFileName As String '從FileName中提取的文件名
Dim sPathName As String '從FileName中提取的路徑名
Dim aFile As Variant '數組,提取文件名sFileName時使用
Dim ws As Worksheet '存儲文件路徑名和文件名的工作表
Set ws = Worksheets("Sheet1") '設置工作表
FileName = Application.GetOpenFilename("Excel 文件 (*.xls),*.xls")
'調用Windows打開文件對話框
If FileName <> False Then '如果未按“取消”鍵
aFile = Split(FileName, "/") '在全路徑中,以“/”爲分隔符,分成數據
sPathName = aFile(0) '取盤符
For i = 1 To UBound(aFile) - 1 '循環合成路徑名
sPathName = sPathName & "/" & aFile(i)
Next
sFileName = aFile(UBound(aFile)) '數組的最後一個元素爲文件名
ws.Cells(1, 2).Value = sPathName '保存路徑名
ws.Cells(2, 2).Value = sFileName '保存文件名
End If
End Sub選擇打開文件後並沒有真實的把它打開。
如何安全地打開Excel文件請參見《高容錯性地打開文件》
本文件實例請參見《從任一Excel中批量導出Txt文件》