SSブログ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。

コンボボックス 内容を連動して切り替える その2 [コンボボックス]

 その1の蛇足ですが、コンボボックスの「RowSource/値集合ソース」のSQLを書き換えて、表示内容を変える場合は、こんなふうになります。

Private Sub txtLBUNCD_AfterUpdate()
'大分類 更新後
  Dim strSQL As String

 Me.txtMBUNCD = Null
 If Nz(Trim(Me.txtLBUNCD), "") = "" Then
  Me.txtMBUNCD.Enabled = False
 Else
  Me.txtMBUNCD.Enabled = True
  strSQL = " SELECT MBUNCD, MBUNMEI FROM TMMBUNRUI " & _
   " WHERE LBUNCD = " & Me.txtLBUNCD & _
   " ORDER BY MBUNCD "
  Me.txtMBUNCD.RowSource = strSQL
 End If

End Sub

 この例では、大分類CDに入力がなかった場合は、中分類CDを使用不可にしてます。
(今回明記していませんが、処理全体の流れを考えると、初期化部分でまず中分類を使用不可にしておきます。)
 IFの条件ですが、妥当な入力かどうかを簡単に判断しています。
本当は、ここの内容がSQLのWHEREに入るので、その妥当性もちゃんとチェックすべきなのですが。
 こっちの例は、RowSourceを書き換えています。この場合、Requeryは不要です。

 この方法は、クエリを自由に差し替えることができますので、柔軟性の高い機能を実現できます。


nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。
※URL(リンク)は記述できません。

トラックバック 0

トラックバックの受付は締め切りました