ファイル選択ダイアログボックスを開く方法です。
前回、『テキストファイルから読み込んだデータをセルに格納するマクロ』を改造して、ファイル選択ダイアログからファイルを選択してデータを読み込んでみます。
例
シートに[読込]ボタンを設置し、Clickイベントハンドラに次のように記述します。
Sub button1_Click() Dim i As Integer Dim bufStr As String Dim filePath As String Dim fd As FileDialog 'ファイル選択ダイアログボックス Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd 'ファイルの複数選択を不可 .AllowMultiSelect = False 'タイトル .Title = "テキストファイル" 'ファイルフィルタのクリア .Filters.Clear 'ファイルフィルタの設定 .Filters.Add "テキストファイル ", "*.txt" '初期表示のフォルダ .InitialFileName = "" If .Show = True Then 'ファイルパスの取得 filePath = .SelectedItems(1) Else 'キャンセル Exit Sub End If End With 'ファイルのオープン Open filePath For Input As #1 i = 2 Do While Not EOF(1) 'ファイルから一行読込む Line Input #1, bufStr '読み込んだデータをセルに格納 Cells(i, 2).Value = bufStr i = i + 1 Loop 'ファイルを閉じる Close #1 End Sub
実行すると、このようなファイル選択ダイアログボックスが表示されます.
[OK]ボタンを押すと、ファイルパスを取得して読込処理を行います。[キャンセル]ボタンを押した場合は何もせずに処理を抜けるようにしています。
また、初期表示のフォルダを「InitialFileName = ""」としていますが、こうするとどうやらマイドキュメントが表示されるようです。これは規定でそうなっているのか分かりませんが、自分の環境ではマイドキュメントが開いてきました。
実行結果
comments powered by Disqus
スポンサーリンク