Я вижу много людей, которые фильтруют свой ListBox своей пользовательской формы, используя TextBox или ComboBox.
Я бы хотел, чтобы это делало мое, но в отличие от них, мой Listbox заполняется с помощью MySQL Recordset, в то время какони используют электронную таблицу Excel
Вот мой фактический код, где SelectProduct - моя пользовательская форма, а ListRef - мой список.
Requete = "SELECT Reference,Nom,Marque,PrixVente FROM Produits_Beta"
rs.Open Requete, oConnect
SelectProduct.ListeRef.Clear
SelectProduct.ListeRef.Column = rs.GetRows
Список скоро будет отображать более 700 результатов, и яМне нужен способ, чтобы мой пользователь мог отфильтровать их, чтобы найти то, что ему нужно.
Если я использовал электронную таблицу для получения значения Listbox, мой код фильтра должен выглядеть следующим образом.(Код изначально от Ральфа) * 1010 *
Dim i As Long
Dim arrList As Variant
Me.ListeRef.Clear
If TheoricalSheet.Range("A" & TheoricalSheet.Rows.Count).End(xlUp).Row > 1 And Trim(Me.TXBoxFilter.Value) <> vbNullString Then
arrList = TheoricalSheet.Range("A1:A" & TheoricalSheet.Range("A" & TheoricalSheet.Rows.Count).End(xlUp).Row).Value2
For i = LBound(arrList) To UBound(arrList)
If InStr(1, arrList(i, 1), Trim(Me.TXBoxFilter.Value), vbTextCompare) Then
Me.ListeRef.AddItem arrList(i, 1)
End If
Next i
End If
If Me.ListeRef.ListCount = 1 Then Me.ListeRef.Selected(0) = True
Могу, но мне нужен способ вставить всю таблицу MySQL в скрытую электронную таблицу, и, опять же, я понятия не имею, как это сделать.