Falla el filtraje con cuadros combinados
Para empezar soy un novato en esto del Access. El tema es que he hecho una pequeña base de datos de la siguiente manera: en una tabla he introducido una lista de plantas y en los campos todas las variables de cada parámetro que tiene una planta i con una S marco la variable del parámetro.
Una vez hecha la tabla y a través de un formulario hecho con cuadros combinados hago un filtraje para que me dé una lista de plantas con esas características.
Cuando ejecuto surge el problema en el último parámetro i no sé porque? Que es lo que ocurre?
Adjunto el inci y el final del código. Supongo que para ustedes es un código sencillito pero para mí ha supuesto semanas llegar hasta aquí
Muchas gracias de antemano.
Private Sub Llistar1_Click() Llista.Value = "" Dim textos As String Dim rs As Recordset Dim db As Database Set db = CurrentDb() Dim str As String str = "SELECT * from orientació where id_orientacio =" & Cuadro_combinado17.Value Set rs = db.OpenRecordset(str, dbOpenDynaset) Set rs2 = CreateObject("ADODB.Recordset") Set conn = Application If rs.Fields(1) = "Est" Then 'str = "SELECT * from T where Est ='S'" textos = textos & " and Est ='S'" Set rs = db.OpenRecordset(str, dbOpenDynaset) End If 'rs.OpenRecordset "SELECT * from T where Est = 'S'", db2, apopenSts str = "SELECT * from orientació where id_orientacio =" & Cuadro_combinado17.Value Set rs = db.OpenRecordset(str, dbOpenDynaset) If rs.Fields(1) = "Nord" Then 'str = "SELECT * from T where Nord ='S'" textos = textos & " and Nord ='S'" End If str = "SELECT * from orientació where id_orientacio =" & Cuadro_combinado17.Value Set rs = db.OpenRecordset(str, dbOpenDynaset) If rs.Fields(1) = "Sud" Then 'str = "SELECT * from T where Sud ='S'" textos = textos & " and Sud ='S'" End If str = "SELECT * from orientació where id_orientacio =" & Cuadro_combinado17.Value Set rs = db.OpenRecordset(str, dbOpenDynaset) If rs.Fields(1) = "Oest" Then 'str = "SELECT * from T where Oest ='S'" textos = textos & " and Oest ='S'" End If 'Fi Orientació ..... If rs.Fields(0) = 9 Then 'str = "SELECT * from T where Hidroponic ='S'" 'textos = textos & " and Hidroponic = 'S'" Dim textos2 As String textos2 = " and Hidroponic = 'S'" End If Select Case Cuadro_combinado50.Value Case 1: MsgBox "moll" Case 2: MsgBox "humit" Case 3: MsgBox "mig" Case 4: MsgBox "baix" Case 5: MsgBox "Sec" End Select Dim s() As String 's = Split(textos, " and ") textos = Mid(textos, 5) 'Fi Tipologia str = "SELECT * from T where " & textos & textos2 Set rs = db.OpenRecordset(str, dbOpenDynaset) While Not rs.EOF Llista.Value = Llista.Value & vbCrLf & rs.Fields(1) rs.MoveNext Wend rs.Close End Sub ' cmdFiltrar_Click