ダイアログボックスを使用してファイルを読み込む
EXCEL VBAでダイアログボックスを使用してファイルを読み込む方法
ダイアログボックスを表示
まず、Application.FileDialog メソッドを使用して、ファイルを開くダイアログボックスを表示します。
以下のコード例は、ユーザーがExcelファイルを選択できるようにする例です。
VBA
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
fd.Title = "ファイルを開く"
fd.AllowMultiSelect = False
fd.Filters.Add "Excelファイル", ".xlsx;.xlsm;.xlsb;.xltx;.xltm;.xlb;*.xls"
If fd.Show = -1 Then
' 選択されたファイルのパスを取得
filePath = fd.SelectedItems(1)
End If
コードは注意してご使用ください。
2. ファイルを読み込む
ファイルのパスを取得したら、Workbooks.Open メソッドを使用してファイルをWorkbooksコレクションに追加できます。
以下のコード例は、選択されたファイルを新しいワークブックとして開く例です。
VBA
If filePath <> "" Then
' ファイルを読み込む
Workbooks.Open filePath
End If
コードは注意してご使用ください。
3. 注意事項
上記のコード例は、ユーザーがExcelファイルを選択できるようにする例です。他の種類のファイルを読み込む場合は、Filters プロパティの値を変更する必要があります。
ファイルを開く前に、ファイルが存在するかどうかを確認する必要があります。
ファイルがすでに開いている場合は、エラーが発生する可能性があります。
4. その他
ダイアログボックスに初期値を設定したり、ユーザーが選択できるファイルの種類を制限したりすることもできます。
ファイルを読み込んだ後、ワークブックの内容を処理したり、他のワークブックにデータをコピーしたりすることができます。