• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Access チェックボックスへのVBAの書き方)

Access チェックボックスへのVBAの書き方

このQ&Aのポイント
  • AccessのチェックボックスにVBAを使ってアクセスする方法について説明します。
  • 画面を開くと特定の項目のみ表示され、チェックボックスにチェックを入れると他の項目が表示されるようになっています。
  • また、特定の条件でエラーメッセージを表示することもできます。

質問者が選んだベストアンサー

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 フレームコントロールを使用しているのなら、処理を記述するのは、各チェックボックスではなく、 フレームコントロール自体のイベントです。 例えば、項目1の場合、項目1の各チェックボックスのプロパティの「オプション値」を見ると、1~4の整数が割り当てられています。 そして、フレームコントロールでオプショングループ化されていると、フレーム内の1つしかチェックを入れられません。 で、そのチェックが入っているチェックボックスのオプション値が、フレームコントロールのValueプロパティにセットされます。 項目2も同様です。 で、項目1と項目2のどちらかでCが選択されている場合に、項目3を表示させる場合は、 Private Sub fraKoumoku1_AfterUpdate()   If Me!fraKoumoku1.Value = 3 Or Me!fraKoumoku2.Value = 3 Then     Me!fraEF.Visible = True   Else     Me!fraEF.Visible = False   End If End Sub (両項目ともチェックボックス[C]のオプション値が3という仮定です。) これを、項目2のフレーム(fraKoumoku2)の更新後処理イベントにも記述して下さい。 各チェックボックスのイベントは一切記述しません。 あと、改善したい点の2ですが、 ・いつチェックしたいのか ・「エラーを発生」とは具体的にどのような動作をさせたいのか(MsgBoxを出す・・・etc) をはっきりさせて下さい。

Swim
質問者

補足

早速の回答ありがとうございました。 Frameにイベントを記述し、きちんとできました!!! 「いつチェックしたいのか」説明不足ですみません。Frameに記述して問題は、解決しました。 このフォームでは条件を入力後、最終的にボタンを押すと任意の画面が出てくる設定です。「エラーを発生」は、項目1、項目2で Cを選択したにもかかわらず、項目3で選択をしなかった場合、最終的にボタンをおしたとき「EまたはFをクリック選択してください」と出したいのです。 お時間ありましたら、また回答お願いいたします。

その他の回答 (1)

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.2

>「エラーを発生」は、項目1、項目2で Cを選択したにもかかわらず、 >項目3で選択をしなかった場合、最終的にボタンをおしたとき >「EまたはFをクリック選択してください」と出したいのです。 直接の回答ではないですが。 項目3のフレーム(fraEF)の既定値にどちらかのチェックボックスのオプション値(1か2)を設定してはどうでしょうか? それなら、フォームを開いた時に必ず設定した方のチェックボックスにチェックが入ります。 これなら、どちらにもチェックが入らないという状態は発生しませんが。

Swim
質問者

お礼

再度の回答ありがとうございます!エラー出すのはちょっと不安だったので、この方法は助かります。 またお世話になるかもしれませんがその時もよろしくお願いします。

関連するQ&A