vbaでファイルを扱うツールを作成する場合、入力となるファイルをmenuシートの特定セル(例えば、A10セル)にフルパスで書いてもらうといった作りになる。
ところが、フルパスのファイル名を指定することは、長々と文字列を書くことになり、意外と面倒くさい。そこで、A10セルの隣のセルに(ファイル)選択とか(フォルダ)参照とかいったボタンを作成し、サクッとGUI画面で設定できるようにしたい。
それを実現するため、ファイル選択ダイアログ(GUIだ)でファイルを選択し、そのファイルのフルパスを取得し、A10セルに設定するコードを書く。こんな感じで。
このコードを選択ボタン或いは参照ボタンにマクロ登録すれば、もう、完成だ。
Sub GetFileName() Dim FileName as Variant FileName = Application.GetOpenFilename("Microsoft Excelブック,*.xlsx?") If FileName = False Then Exit Sub Range("A10").Value = FileName End Subフォルダ選択ダイアログFileDialogとDir関数、ワイルドカード「*」を使う方法もある。
0 件のコメント:
コメントを投稿