- ベストアンサー
ACCESS フォームの操作
- BT11とBT12のクリックイベントでメインフォームを表示する方法
- BT11クリック時にBT21とBT23を表示し、BT12クリック時にBT22とBT23を表示する方法を教えてください
- フォームの表示はできるが、コマンドボタンの表示・非表示が切り替わらないエラーが発生しています
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> BT11をクリックしたときは、1行目でとまっているようです。 DoCmd.OpenFormで第5引数に「acDialog」を指定しているために、そのような動作に なっているものと思います。 (これを指定すると、MsgBoxなどのように、そのフォームを閉じるまで、次の処理が実行 されなくなります) ですので、まずはその引数を省略して DoCmd.OpenForm "フォーム名", acNormal, , acFormAdd とした上で、ポップアップで表示したいということでしたら、当該フォーム(BT21を設置して いるフォーム)のデザインビューで、『その他』タブの『ポップアップ』の値を「はい」に、『書式』 タブの『サイズ自動修正』を「はい」に、同タブの『自動中央寄せ』を「はい」に、それぞれ 指定して下さい。 また、当該フォーム表示中は他のフォームなどを触れなくしたい場合は、その下の『作業 ウィンドウ固定』も「はい」にします。 さらに、フォームの外見をMsgBoxなどと同様にしたい場合は、『書式』タブの各項目を 以下のようにしてみてください(一例): 『スクロールバー』:「なし」 『レコードセレクタ』:「いいえ」 『移動ボタン』:「いいえ」 『区切り線』:「いいえ」 『境界線スタイル』:「ダイアログ」 『コントロールボックス』:「いいえ」 『最小化/最大化ボタン』:「なし」 『閉じるボタン』:「いいえ」 ※他の設定項目の内容により、設定が無視される項目もありますが、ここではその 項目の設定もそのまま載せさせていただきました(汗)
その他の回答 (1)
- nekoman2012
- ベストアンサー率33% (1/3)
DoCmd.OpenFormの引数OpenArgsに値を持たせ、フォーム・メイン側Form_Loadあたりで制御するのも一つの手かと思います。
お礼
補足とお礼間違えてしまいました。 すみません。
補足
お礼が遅くなり申し訳ありません。 ありがとうございました。 「OpenArgs」が何か知らず使ったことがなかったので、調べました。 こんな感じで、いつも必要なことだけ調べて使用しているので、またひとつ勉強になりました。 お二人の回答を合わせて、希望通りのものができました。 本当にありがとうございました。
お礼
お礼が遅くなり申し訳ありません。 すごく丁寧なご説明、ありがとうございます。 また、書いていなかったにもかかわらず >ポップアップで表示したいということでしたら、当該フォーム(BT21を設置して >いるフォーム)のデザインビューで、『その他』タブの『ポップアップ』の値を「はい」に、『書式』 >タブの『サイズ自動修正』を「はい」に、同タブの『自動中央寄せ』を「はい」に、それぞれ >指定して下さい。 >また、当該フォーム表示中は他のフォームなどを触れなくしたい場合は、 と、まさにお察しの通りです。 お二人のご回答を合わせて、希望通りのことができました。 本当にありがとうございました。