こんにちは。
Access2000で作成しているプログラムのなかで、リストの作成先を指定するために、SHBrowseforfolderというAPIを使用しています。試行錯誤の末、フォルダを選択するところまではできたのですが、細かい設定が分からないのです。
ネットワークドライブの選択はできないようにする、とかファイルも選択できるようにする、とかモジュールに書いているのに、全然できていません。
あと、フロッピードライブやMO、CD-ROMなどの指定はできないようにしたいのですが、それは不可能なんでしょうか。自分でも指定されたパスが正しいか、チェックをかけているのですが、フロッピードライブやMO、CD-ROMなどを指定すると、エラー番号「52」で帰ってきて、そのあとに、自分が出しているメッセージ(「パスが間違っています」)が出てしまうのです。
エラー番号を拾えばいいのかもしれませんが、それ以外にエラーが出てしまうと困るので、それならいっそのこと、最初から指定できないようにしたいのです。
どなたかよい方法をご存知の方、回答よろしくお願いします。
No.3ベストアンサー
- 回答日時:
参考URLのページ、下のほうまで読みました?
IEのバージョンによって、参照設定ができないことがあると書いてありますよね。
そこに書いてあるとおり、参照設定はせずに使ってください。
あと、下のソースはその環境で使えるかどうかチェックするVBScriptです。
”ここから”から”ここまで”をコピーして、メモ帳などでファイルに保存し、拡張子をvbsにしてからダブルクリックで実行してみてください。
これでダイアログが表示されればAccessでも使えるはずです。
'-------------ここから
Dim objShell
Dim objFolder
' オブジェクトの生成
Set objShell = CreateObject("Shell.Application")
' フォルダ選択ダイアログを表示
Set objFolder = objShell.BrowseForFolder(0, "フォルダを選択してください。", 0)
Set objShell = Nothing
'-------------ここまで
当方IE6.0、Access2002ですが、問題なく表示できました。(VBScriptでもAccessVBA共)
こんにちは。
taka_tetsuさん、お手数おかけしてすみません。参考URL、ちゃんと最後まで読んでませんでした。わざわざチェックのためのスクリプトまで教えていただいて、ほんとありがとうございます。おっしゃる通りコピーして実行したらちゃんとできました!早速自分が作ったプログラムも修正したら、ちゃんと動作しました。
回答どうもありがとうございました。
No.2
- 回答日時:
実はAPI使わなくても出せたりするんですよ、そのコモンダイアログ。
詳しくは、参考URLを見てください。
あと、APIでがんばるのであれば、
http://www.vbvbvb.com/jp/gtips/0951/gSHBrowseFor …
http://www.koalanet.ne.jp/~akiya/vbtaste/vbp/#sh …
も参考に。
で、uiFlagsに設定する値の詳細な情報なんですが、MSDNを見るのが一番です。
ただし、WebのMSDNは、数個しか書いていないのでダメですね。
このフラグでできること以上の制限をかけたいのであれば、コールバック関数を使わないといけなくなります。
#ちなみにファイルの選択はできないですよ、これ。
参考URL:http://www.galliver.co.jp/writing/susume_vb/tre9 …
こんにちは。
早速教えていただいたサイトを見て、真似して書いてみたのですが、しょっぱなからエラーになってしまうのです。サイトの内容なのでここで質問するわけには行きませんが…。私はAccessを使用していますが、サンプルはVB(ですよね?)だからできないのでしょうか。
もし使えれば、非常に簡潔で分かりやすくていいわ!と思ったのですが残念です。
もう少しいろいろ調べてみます。
回答どうもありがとうございました。
No.1
- 回答日時:
このAPIをVBで使ったことはないんですが、Delphiで使おうと思って、
いろいろ調べていました。
VBで使う方法は下記URL「へろぱのページ」に詳しく載っているようです。
私自身試したわけではありませんが、信頼できるサイトですので、
一度ご覧になって試してみてください。
参考URL:http://plaza5.mbn.or.jp/~heropa/vb04.htm
こんにちは。
実はこのサイト、もう参考にさせてもらったんです(笑)。でもイマイチ理解できなくて…改めてちゃんとみてみます。
回答どうもありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Windows10でコマンドプロンプト...
-
VBA フォルダ名に特定の文字を...
-
excelマクロ 冒頭3文字が一致す...
-
【コマンドプロンプト】名前順...
-
パス名に2バイト文字(マルチバ...
-
Dreamweaverでイメージを挿入す...
-
C#でフォルダをロックする方法
-
excel VBA Dirにて検索したフォ...
-
Excelで指定したフォルダに保存...
-
ディレクトリ名変更してコピー...
-
API関数(DLL)の呼び出しにお...
-
VBAでファイル名を指定して保存...
-
META-INFフォルダの置き場所に...
-
Hitachi Embedded Workshop (HE...
-
exclude xcopy 除外フォルダ指...
-
ThisWorkbookがあるフォルダ更...
-
【マクロ】フォルダにファイル...
-
期間を指定したフォルダの削除...
-
同一フォルダ内の別ブックから...
-
ACCESS VBAからのファイル削除
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Windows10でコマンドプロンプト...
-
デスクトップの画像をhtmlに表...
-
Excelのハイパーリンクについて...
-
VBA 最新のフォルダ取得
-
パス名に2バイト文字(マルチバ...
-
会社のネットワーク上のファイ...
-
ファイル名と同名のフォルダを...
-
フォルダ内のPDFファイル名を変...
-
Access VBA で フォルダ権限...
-
【マクロ】ファイル名の日付に...
-
VBA フォルダ名に特定の文字を...
-
excelマクロ 冒頭3文字が一致す...
-
C ファイル出力で、フォルダが...
-
Debug フォルダは消していいの?
-
VBA フォルダの複数選択ができない
-
VBプロジェクトでのフォルダ構...
-
ThisWorkbookがあるフォルダ更...
-
EXCELのセルにフォルダのパスの...
-
VBA フォルダ名と画像ファイル...
-
カレントフォルダって?
おすすめ情報