|
すみません。投稿をミスしたようですので、再投稿します。
> チェックボックス1にチェックを入れた場合にはテキストボック ス1〜4に「欠席」という文字を
> チェックボックス2にチェックを入れた場合、テキストボックス1〜4に「失格」 という文字を出したいのです。
案1
考え方
実技得点、学科得点、を、欠席の時は Null に設定、失格の時は -1 に設定するようにしておいて、
書式プロパティで表示を変える。
設定手順
テーブルのデザインビューでフィールドの既定値を下記のように設定しておきます。
欠席 False
失格 False
実技得点 0
学科得点 0
フォームのデザインビューで各テキストボックスのプロパティを下記のように設定します。
テキストボックス1
コントロールソース 実技得点
書式 0;"失格";0;"欠席"
テキストボックス2
コントロールソース =Switch([欠席],"欠席",[失格],"失格",[実技得点]>=70,"合",True,"否")
テキストボックス3
コントロールソース 学科得点
書式 0;"失格";0;"欠席"
テキストボックス2
コントロールソース =Switch([欠席],"欠席",[失格],"失格",[学科得点]>=70,"合",True,"否")
チェックボックス1 の更新後処理のイベントプロシージャに下記のコードを記述。
If Me.欠席 Then
Me.失格 = False
Me.実技得点 = Null
Me.学科得点 = Null
End If
チェックボックス2 の更新後処理のイベントプロシージャに下記のコードを記述。
If Me.失格 Then
Me.欠席 = False
Me.実技得点 = -1
Me.学科得点 = -1
End If
案2
考え方
テキストボックス1 と テキストボックス3 の上に、それぞれぴったり重なるようにテキストボックスを重ねて、
それを表示用とする。フォーカス取得時に、テキストボックス1、テキストボックス2 にフォーカス移動させて
入力出来るようにする。背面にあるコントロールもアクティブになると前面に浮き出てくる性質を利用してます。
テキストボックス1 の上に重ねたテキストボックス
コントロールソース =Switch([欠席],"欠席",[失格],"失格",True,[実技得点])
タブストップ いいえ
フォーカス取得時のイベントプロシージャ
Me.テキストボックス1.SetFocus
テキストボックス3 の上に重ねたテキストボックス
コントロールソース =Switch([欠席],"欠席",[失格],"失格",True,[学科得点])
タブストップ いいえ
フォーカス取得時のイベントプロシージャ
Me.テキストボックス3.SetFocus
> ただ、このテキストボックスには既に、コンボボックス「txtkubun」の値を参照して背景色と
> 同化させフォーカスできないようにするための[txtkubun]=1 Or [txtkubun]=3 Or [txtkubun]=5
> という条件付き書式の関数が許容数である、3つ「条件1」に指定されてしまっています。
> これに質問のチェックボックスにチェックがついた時の条件を組み込めるものでしょうか?
条件付き書式 の 条件 で「式」を選択して、下記の式を設定すれば、一つの条件で済みますので、
あと、チェックボックスの条件を組み込めばいいのでは。
[txtkubun]=1 Or [txtkubun]=3 Or [txtkubun]=5
または、
[txtkubun] In (1,3,5)
|
|