• Hiển thị giá trị conbobox2 theo giá trị combobox 1
  • 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

    (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ứ.

    007  Vì hằng Boolean nó qui định vậy. Nếu bên SQL thì sẽ là 1/0 cho Yes/No, True/False.
  • 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ứ.

    007  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