- Home ›
- Excel VBA入門 ›
- ブックの作成と保存
ファイル選択ダイアログの表示
ブックを開く時に「ファイルを開く」ダイアログを表示して、ユーザーに開くブックを選択してもらうことができます。ここでは Excel VBA でブックを開くときにファイル選択ダイアログを表示する方法について解説します。
(Last modified: )
ファイル選択ダイアログの表示
「ファイルを開く」ダイアログを表示するには Application オブジェクトの「GetOpenFilename」メソッドを使います。
Dim fname As String fname = Application.GetOpenFilename
メソッドを実行した結果、選択されたファイル名を戻り値として返してきます。ただし、ダイアログで「キャンセル」ボタンをクリックした場合にはファイル名ではなく「False」が帰ってきます。このメソッドではファイル名が取得できるだけなので、ブックを開く場合には取得したファイル名を使って別途ブックを開く処理を行って下さい。
Dim fname As String fname = Application.GetOpenFilename If fname <> "False" Then Workbooks.Open FileName:=fname End If
またデフォルトではダイアログのタイトルは「ファイルを開く」ですが、「Title」引数に値を設定することで、タイトルを任意の文字列に変更することができます。
Dim fname As String fname = Application.GetOpenFilename(Title:="売上ファイルの選択")
サンプルプログラム
では簡単なサンプルで試してみましょう。
Sub テスト() Dim fname As String fname = Application.GetOpenFilename( _ Title:="売上ファイルの選択") If fname <> "False" Then MsgBox "選択したファイルは" & fname & "です" Workbooks.Open filename:=fname End If End Sub
上記マクロを実行すると次のようになります。
ファイルを選択するためのダイアログが表示されます。「2005成績.xls」を選択してから「開く」ボタンをクリックします。
選択されたファイルが表示されます。ファイル名はフルパスで取得することが分かります。
選択されたファイル名のブックを開くことができました。
-- --
Excel VBA でブックを開くときにファイル選択ダイアログを表示する方法について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。