• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:(ACCESS)条件に応じて、テキストボックスを表示・非表示設定)

フォーム上の条件に応じてテキストボックスを表示・非表示にする方法

このQ&Aのポイント
  • フォーム上のテキストボックスAを条件に応じて表示・非表示にさせたいです。
  • 条件は、サブフォームのテキストボックスBに「支払」を言う文字があれば、テキストボックスAが表示され、なければ非表示にする方法が探しています。
  • Private Sub AA_GotFocus()を使用し、If文で条件を判断し、Visibleプロパティを設定することで、テキストボックスを表示・非表示にすることができます。

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

  • ベストアンサー
  • piroin654
  • ベストアンサー率75% (692/917)
回答No.3

訂正。(2)のところで、 Private Sub t1_GotFocus() If Forms!フォーム名!ctlサブフォーム名!テキストボックスB Like "*" & "支払" & "*" Then になっていましたが、 Private Sub t1_GotFocus() を、 Private Sub AA_GotFocus() としてください。書き間違いです。

treemeet
質問者

お礼

ありがとうございました。 なんとかできました。

その他の回答 (2)

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.2

(1)はテキストボックスBに「支払」という文字だけが 表示されている場合、(2)は「支払」という文字が含まれて いる場合です。 (1) Private Sub AA_GotFocus() If Forms!フォーム名!ctlサブフォーム名!テキストボックスB = "支払" Then 「ctlサブフォーム名」はメインフォームのサブフォームを 表示するコントロールの名前で作成時は「埋め込み0」などと 名前がついている部分です。直接、サブフォームの名前は 書きません。 サブフォームが帳票形式やデータシート形式の場合は サブフォームのカレントレコード、すなわち サブフォームの左の黒い三角のマークがついているレコードが 対象になります。単票形式の場合は表示されたレコードが カレントレコードです。 (2) 以下はテキストボックスBに「支払」という文字が含まれている場合 です。(1)と同様にカレントレコードに対してです。 Private Sub t1_GotFocus() If Forms!フォーム名!ctlサブフォーム名!テキストボックスB Like "*" & "支払" & "*" Then

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.1

テキストボックスAがメインフォームにあり テキストボックスBがサブフォームにあって その値が「支払」である (「ほにゃ支払らら・・」などの余計な文字は含んでいないとします) フォーカス取得後イベントではなく サブフォームのレコード移動時イベントに加えてみてください。 Forms!メインフォーム名!テキストボックスA名.Visible = Forms!メインフォーム名!サブフォーム名!テキストボックスB名 = "支払" 当方Acc2002です。