Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Funzione ricerca...

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    3

    Funzione ricerca...

    Innanzitutto salve a tutti.
    Ho un problema x quanto riguarda la funzione di ricerca in programmino in vb interfacciato ad un database access: la stringa ke ho inserito nel programma mi rikiama solamente un record e fin qui ok, però se la stringa da ricercare appartiene a + di un record come faccio a visualizzare tutti i risultati (uno alla volta x poi modificarli)?
    é abbastanza urgente grazie anticipatamente
    !!Hasta siempre!!

  2. #2
    Ciao.
    Potresti, secondo me, creare una listbox che contiene tutti i record che soddisfano le condizioni di ricerca. Io in genere mi comporto così (premetto che sono autodidatta e spero di non scandalizzare i vari "guru" del forum....):

    attraverso un ciclo puoi trovare i record in questo modo:

    with rstTuoRecordSet
    .index = "indice"
    .seek ">=", StringaRicerca
    while InStr(!CampoDatabase, StringaRicerca)
    lstListBox1.addItem !CampoDatabase
    .MoveNext
    if .eof then
    exit sub
    end if
    wend
    end with

    In questo modo nella listbox hai tutti i record elencati che soddisfano la condizione di ricerca (StringaRicerca).

    Per poter poi modificare il singolo record, occorre un altro pò di codice. Fammi sapere se ti occorre.


    Giulio C. - Roma

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    3

    codice

    Grazie mille x la risposta ma mi servirebbe anke l'altra parte del codice

    tnx
    !!Hasta siempre!!

  4. #4
    Eccoti accontentato...

    Allora, per recarti sul record desiderato, dovrai attivare l'evento click sulla listbox in questo modo:

    Private Sub lstListBox1_Click()
    Dim nGoRecord as integer
    nGoRecord = lstListBox1.ListIndex
    With rstCodici ' Riposizionamento del puntatore sul record scelto
    .Index = "indice"
    .Seek ">=", StringaRicerca
    .Move nGoRecord
    End With

    ... continuazione tuo codice...

    end sub

    In pratica devi "riposizionare" il puntatore al primo dei record che soddisfa la condizione di ricerca. Di seguito uso la variabile "nGoRecord" che mi indica di quante posizioni mi devo muovere (valore dato da lstListBox1.ListIndex) per raggiungere il record "cliccato".
    Move nGoRecord mi sposta quindi il puntatore al record selezionato.
    Da qui dovrai tu scegliere cosa fare; se aprire un form per la modifica o altro.
    Fammi sapere, ok?


    Giulio C. - Roma

  5. #5
    Errata corrige...
    Scusami, ma la fretta di risponderti attesa la tua fretta...

    Non mettere "With rstCodici" ma "With rstTuoRecordSet"

    Giulio C. - Roma

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.