ファイルを開く・選択・保存のコモンダイアログを実装する
おらはAccess2003!
2007にはまだまだ手を出さない!ヽ(`Д´)ノ
なんせわかんねぇんだもん!
ところで、コモンダイアログってしってます?
Accessで使用するとなると、
Developer Extensionsっつうやつにはいっている
コモンダイアログ5.0とか6.0が必要なんだとか
後はWindowsAPIを使うのが一般的かな~
それとExcel経由===
下のサイトさんでは面白い使い方を載せてました。
(2000の話ですけどね・・・)
[ファイルを開く] ダイアログを表示する方法
Access2003ですと2002から追加された
「FileDialog」っつうメソッドが使用可能なのだ!
俺も知らなかった・・・勉強不足(T▽T;)
というわけで、必要に駆られたんでメモる!
まずは、AccessのVB画面のツールバーのツールにある
参照設定を開いて、
「Microsoft Office 11.0 Object Library」
というのをチェックする。
(12.0でもよいよ)
後はプログラムを書き書きするだけ!
'ダイアログメソッドを拾う
Dim dlg As FileDialog
'FileDialogをセットする
Set dlg = Application.FileDialog(msoFileDialogFilePicker)
'引数はファイルの選択・開く・保存・フォルダにするかなど
'msoFileDialogFilePicker : ファイルを選択
'msoFileDialogFolderPicker:フォルダを選択
'msoFileDialogOpen:開く
'msoFileDialogSaveAs:保存する
'以下はダイアログの設定
With dlg
'ダイアログのタイトル
.Title = "ファイルの選択"
'ボタンに表示される名称
.ButtonName = "選択"
'フィルタをかける場合は入れておく
.Filters.Clear
'ファイル種類のフィルタ
.Filters.Add "CSV カンマ区切り", "*.csv"
'2種類以上の登録が可能
.Filters.Add "Excel エクセルシート", "*.xls"
End dlg
'ファイルのフルパスを格納
Dim FilePath As String
'保存・選択・開くいずれかのボタンが押されたとき
If dlg.Show = -1 Then
'ダイアログで選択したファイルフルパスを拾う
FilePath = dlg.SelectedItems.Item(1)
End If
できた!
今回も簡単にできたように思えるが、
色々調べまくって拾い集めた情報で
ようやく完成したのだ!(●´ω`●)ゞ
動かしてみるとNiceな感じだった。
Office2002以上という条件がついていたが
そんなのは持っている人には関係なし!
使えればいいのだぁ~~~~
Access VBA逆引き大全600の極意―2002/2003/2007対応/高柳 靖子

¥2,520
Amazon.co.jp
2007にはまだまだ手を出さない!ヽ(`Д´)ノ
なんせわかんねぇんだもん!
ところで、コモンダイアログってしってます?
Accessで使用するとなると、
Developer Extensionsっつうやつにはいっている
コモンダイアログ5.0とか6.0が必要なんだとか
後はWindowsAPIを使うのが一般的かな~
それとExcel経由===
下のサイトさんでは面白い使い方を載せてました。
(2000の話ですけどね・・・)
[ファイルを開く] ダイアログを表示する方法
Access2003ですと2002から追加された
「FileDialog」っつうメソッドが使用可能なのだ!
俺も知らなかった・・・勉強不足(T▽T;)
というわけで、必要に駆られたんでメモる!
まずは、AccessのVB画面のツールバーのツールにある
参照設定を開いて、
「Microsoft Office 11.0 Object Library」
というのをチェックする。
(12.0でもよいよ)
後はプログラムを書き書きするだけ!
'ダイアログメソッドを拾う
Dim dlg As FileDialog
'FileDialogをセットする
Set dlg = Application.FileDialog(msoFileDialogFilePicker)
'引数はファイルの選択・開く・保存・フォルダにするかなど
'msoFileDialogFilePicker : ファイルを選択
'msoFileDialogFolderPicker:フォルダを選択
'msoFileDialogOpen:開く
'msoFileDialogSaveAs:保存する
'以下はダイアログの設定
With dlg
'ダイアログのタイトル
.Title = "ファイルの選択"
'ボタンに表示される名称
.ButtonName = "選択"
'フィルタをかける場合は入れておく
.Filters.Clear
'ファイル種類のフィルタ
.Filters.Add "CSV カンマ区切り", "*.csv"
'2種類以上の登録が可能
.Filters.Add "Excel エクセルシート", "*.xls"
End dlg
'ファイルのフルパスを格納
Dim FilePath As String
'保存・選択・開くいずれかのボタンが押されたとき
If dlg.Show = -1 Then
'ダイアログで選択したファイルフルパスを拾う
FilePath = dlg.SelectedItems.Item(1)
End If
できた!
今回も簡単にできたように思えるが、
色々調べまくって拾い集めた情報で
ようやく完成したのだ!(●´ω`●)ゞ
動かしてみるとNiceな感じだった。
Office2002以上という条件がついていたが
そんなのは持っている人には関係なし!
使えればいいのだぁ~~~~
Access VBA逆引き大全600の極意―2002/2003/2007対応/高柳 靖子

¥2,520
Amazon.co.jp