Ricerca in più campi

di Anonimizzato23613 il
25 risposte

25 Risposte - Pagina 2

  • Inoltre, se faccio la ricerca in un solo campo il codice va benissimo!
  • All'interno di uno o dell'altro campo?

    Allora devi usare la txt_cerca anche nella prima LIKE non solo nella seconda!
  • Oregon sto provando a correggere il codice ma non funziona.
    posto per l'ultima volta le due funzioni di codice utilizzato, poi vedo di trovare un'altra soluzione. Grazie comunque per l'aiuto datomi.
    Public Function Apici2(ByVal pStringa As String) As String
    Apici2 = Replace(pStringa, "'", "''") & "*'"
    End Function

    Public Function cerca_parola()
    Dim sql As String

    If txt_cerca.Text = vbNullString Then
    Set rs = DB.OpenRecordset("SELECT * FROM Programmi ORDER BY nomeprogramma")
    Else
    sql = "SELECT * FROM Programmi WHERE nomeprogramma LIKE '" & Apici2(txt_cerca.Text) Or "note LIKE '" & Apici2(txt_cerca.Text)
    sql = sql & " ORDER BY nomeprogramma "
    Set rs = DB.OpenRecordset(sql)
    End If
    End Function
  • Nella funzione Apici2 hai aggiunto nuovamente & "*'"

    Ma scusa, sono io che mi spiego o tu non comprendi?
  • Lo inserita, altrimenti dovevo inserirla nella funzione cerca_parola, altrimenti non funziona nemmeno con la ricerca in un solo campo dandomi errore 3075...
  • Lo devi inserire nella stringa sql non nella funzione!


    sql = "SELECT * FROM Programmi WHERE nomeprogramma LIKE '*" & Apici2(txt_cerca.Text) & "*' OR note LIKE '*" & Apici2(txt_cerca.Text) & "*' ORDER BY nomeprogramma"


    ovviamente togliendo quell'asterisco nella Apici2 !
  • Comunque ora sembra funziona, grazie oregono
  • andreas91 ha scritto:


    Comunque ora sembra funziona, grazie oregono
    Come "comunque" ... "sembra" ... "oregono" ...

  • Scusa gli errori nello scrivere...
    Il codice funziona oregon
  • Grazie
  • Di nulla ma se non studi un po' queste cose di base altro che impazzire....
Devi accedere o registrarti per scrivere nel forum
25 risposte