Excel/VBAでファイルダイアログを使う
Excelマクロでファイルダイアログを使う方法です。
ファイルを開く際にファイルを選ばせたり、保存を促したりする際に自動でファイルダイアログを起動させる時に使えます。
[ad#top-1]
ファイルを開く場合(オープンダイアログ)
ファイルを開くためのダイアログを起動させるには以下のソースコードとなります。Application.GetOpenFilename
メソッドを使います。引数はファイルタイプです。
返値は指定したファイルのフルパスになりますが、「キャンセル」ボタンを押した際はFalse
を返すので、それに応じて処理を変えます。
Sub OpenFileDialog() fname = Application.GetOpenFilename("Excelファイル,*.xlsx") If fname <> False Then MsgBox ("開く処理します。ファイル名: " & fname) Else MsgBox ("開く処理を中断します") End If End Sub
実行すると以下のようなダイアログが起動します。
ファイルを保存する場合(セーブダイアログ)
ファイルを保存するためのダイアログを起動させるには以下のソースコードとなります。オープンダイアログ同様、Application.GetOpenFilename
メソッドを使います。引数はファイルパスとファイルタイプです。セーブダイアログの場合、保存先とファイル名を事前に指定できます。
返値は同じく指定したファイルのフルパスになり、「キャンセル」ボタンを押した際はFalse
を返します。
Sub SaveFileDialog() fname = Application.GetSaveAsFilename("C:\Users\...\test.xlsx", "Excelファイル,*.xlsx") If fname <> False Then MsgBox ("保存処理します。ファイル名: " & fname) Else MsgBox ("保存処理を中断します") End If End Sub
実行すると以下のようなダイアログが起動します。
[ad#ad-1]
スポンサーリンク