私は、私のVBAアクセスフォームに3つのコンボボックスコントロール(MFG、コード、およびGrpID)を持っています。ユーザーが最初のコンボボックス(MFG)からオプションを選択すると、残りのコンボボックスが利用可能なオプションを表示します。しかし、ユーザーが最初のコンボボックスの値を変更することを決めた場合、何らかの検証を行う必要があります。残りのコンボボックスの値はクリアする必要があります。私がする必要があるのは、最初のコンボボックスが変更されたら、2番目と3番目のコンボボックスをクリアするか、少なくともフォーカスを合わせる必要があるため、最初の値がクリアされたときに古い値を使用できない最初のコンボボックスに。下図のように私は、最初のコンボボックスのコードブロック」AfterUpdateを追加しました:vbaアクセスで別のドロップダウン値が変更されたら、ドロップダウン値をクリアしますか?
Private Sub MFG_AfterUpdate()
Code.Value = " "
GrpID.Value = 0
End Sub
問題のコードの上に書いた後である:彼ら(コードとGRPID)がクリックを取得するまで、彼らは空に得ることはありません。言い換えれば、MFGの価値を変えるたびに、それらをクリックして空にする必要があります。誰でも私に指示することができますか私はそれらをクリアするか、少なくとも彼らに焦点を当てる?
おそらくRequeryが必要ですか?また、そのイベントが動作していない場合は、 'Change'イベントを試してください –
私が提供したデータでこの動作を複製することはできません(これを試してみるとAferUpdateイベントが発生するとコンボボックスが即座にクリアされます)。 AfterUpdateイベントは、ドロップダウンからコンボボックスを変更するとき、または入力時に変更したコンボボックスからタブを移動したときに発生します。詳細を教えてください。 –