-
Hiển thị giá trị conbobox2 theo giá trị combobox 1
tvn_hut > 12-05-18, 03:14 PM
Hi cả nhà. trước đây diễn đàn mình đã mở topic này, tuy nhiên trên table mình xây dựng nó khác 1 chút. Mình sử dụng dạng yes/No để tạo mối quan hệ giữa hàng và cột. Ví dụ mình có 3 cột là Line A, line B và Line C. Tương ứng có 2 hàng là a và b trong đó giữa a và 3 line là yes còn giữa b là yes cho line A và Line C và no với line B. Khi mình chọn Line A ở conbobox 1 thì tại combobox 2 hiện 2 giá trị là a và b. nhưng nếu chọn line B tại combobox1 thì combobox 2 chỉ hiện a. tức là lọc theo giá trị yes. Mình chưa nghĩ ra cách làm thế nào để giải quyết nó vì xây dựng theo ma trận như này thì tiết kiệm được rất nhiều hàng. Mong anh em giúp đỡ -
RE: Hiển thị giá trị conbobox2 theo giá trị combobox 1
ongke0711 > 12-05-18, 06:32 PM
Vụ này cũng không phức tạp.
Nếu theo tôi hiểu thì table của bạn như thế này: ví dụ đặt tên "Table1"
---------------------------------------------
ID LineA LineB LineC
---------------------------------------------
a Y Y Y
b Y N Y
- ComboBox1: có RowSource là 'Value List' bạn tự gõ tên Field vô đơn giản rồi. (Nếu muốn lấy tên Field tự động cũng không khó)
- ComboBox2: bạn sẽ gán RowSource bằng code VBA ở sự kiện ComboBox1_AfterUpdate.
Mã PHP:Private Sub ComboBox1_AfterUpdate()
Dim strSQL As String
Dim sField As String
sField = Me.ComboBox1.Value
strSQL = "SELECT Table1.ID FROM Table1 WHERE Table1." & sField & "=-1"
Me.ComboBox2.RowSource = strSQL
Me.ComboBox2.Requery
End Sub -
RE: Hiển thị giá trị conbobox2 theo giá trị combobox 1
tvn_hut > 14-05-18, 03:54 PM
(12-05-18, 06:32 PM)ongke0711 Đã viết: Vụ này cũng không phức tạp.
Nếu theo tôi hiểu thì table của bạn như thế này: ví dụ đặt tên "Table1"
---------------------------------------------
ID LineA LineB LineC
---------------------------------------------
a Y Y Y
b Y N Y
- ComboBox1: có RowSource là 'Value List' bạn tự gõ tên Field vô đơn giản rồi. (Nếu muốn lấy tên Field tự động cũng không khó)
- ComboBox2: bạn sẽ gán RowSource bằng code VBA ở sự kiện ComboBox1_AfterUpdate.
Mã PHP:Private Sub ComboBox1_AfterUpdate()
Dim strSQL As String
Dim sField As String
sField = Me.ComboBox1.Value
strSQL = "SELECT Table1.ID FROM Table1 WHERE Table1." & sField & "=-1"
Me.ComboBox2.RowSource = strSQL
Me.ComboBox2.Requery
End Sub
Cám ơn bạn Ongke0711 nhiều. tiện thể bạn giải thích giúp mình tại sao giá trị điều kiện lại là -1. Khi giá trị yes là true hoặc 1 chứ. -
RE: Hiển thị giá trị conbobox2 theo giá trị combobox 1
ongke0711 > 14-05-18, 04:35 PM
-
RE: Hiển thị giá trị conbobox2 theo giá trị combobox 1
tvn_hut > 26-05-18, 12:06 AM
(14-05-18, 04:35 PM)ongke0711 Đã viết:
(14-05-18, 03:54 PM)tvn_hut Đã viết: Cám ơn bạn Ongke0711 nhiều. tiện thể bạn giải thích giúp mình tại sao giá trị điều kiện lại là -1. Khi giá trị yes là true hoặc 1 chứ.
Vì hằng Boolean nó qui định vậy. Nếu bên SQL thì sẽ là 1/0 cho Yes/No, True/False.
Cám ơn bạn nhiều -
RE: Hiển thị giá trị conbobox2 theo giá trị combobox 1
hoaqldd33 > 14-07-18, 08:06 PM
Cái này giống như chọn tỉnh thì chỉ xuất hiện các huyện của tỉnh đó chứ j