ファイル選択ダイアログを表示してエクセルファイルを選択して読み込みます。
ファイルパスはcollection型で返されます。
例えば、豊島区様式01.xlsx、品川区様式01.xlsx、、、
とあって、そのC3セルに欲しい情報があるときなどに使います。
Function SelectExcelFiles() As Variant
Dim filePaths As Variant
' ファイルの複数選択ダイアログを表示し、ファイルパスを取得
filePaths = Application.GetOpenFilename("Excelファイル (*.xls; *.xlsx), *.xls; *.xlsx", MultiSelect:=True)
' ダイアログがキャンセルされた場合は処理を終了
If Not IsArray(filePaths) Then
Exit Function
Else
SelectExcelFiles = filePaths
End If
End Function
Sub Test()
Dim wb As Workbook
Dim filePaths As Variant
Dim filePath As Variant
' ファイルの複数選択ダイアログを表示し、ファイルパスを取得
filePaths = SelectExcelFiles
If Not IsEmpty(filePaths) Then
For Each filePath In filePaths
' 各エクセルファイルを開く
Set wb = Workbooks.Open(filePath)
' 好きな処理
MsgBox wb.Worksheets(1).Range("A1").Value
' ワークブックを閉じる
wb.Close False
Next filePath
End If
End Sub









コメントを残す