Ricerca da casella di testo in VB su OpenForm

di Anonimizzato24670 il
3 risposte
Ciao a tutti, premetto che sono nuovo sul forum e alle primissime armi con Access.
Vi espongo problema,

Su di una maschera principale, ho inserito una casella di testo ed un pulsante, inserendo del testo nella casella e premendo il pulsante, tramite VB cerco la corrispondenza nella tabella principale ( nel campo nome ), una volta trovata apro la maschera secondaria(anagrafica) per la modifica

Private Sub cmd_cerca_Click()
DoCmd.OpenForm "Anagrafica", acNormal,  , "nome like '*" & Me.txt_cerca & "*'"
End Sub
come faccio per restituire un messaggio del tipo ( nessuna corrispondenza trovata ) se non dovessi trovare nessun nome ???

ora invece mi apre la maschera secondaria con i campi vuoti.

Grazie infinite per la pazienza

3 Risposte

  • Su open della form Anagrafica conta i records e se =0 forzi Cancel=true
    Questo genera un errore lato chiamata openform che se intercetti, err=2501 puoi gestire con un messaggio...
    
    On Error GoTo ErrNoData
    
    DoCmd.OpenForm "Anagrafica",...... 
    Exit sub
    
    ErrNoData:
    Select case Err.Number
        Case 2501
            Msgbox "nessun dato corrispondente"
         Case else
            Msgbox err.number & err.description
            
     End Select
     End sub
    
    Per contate i records su open...
    
    Me.Recordsetclone.movelast
    Cancel=Me.RecordsetClone.recordcount=0
    
    Saluti
  • Grazie per la risposta, questo sistema mi restituisce il msgbox solo se non trova nessun dato nella tabella, oppure se non trova nessun dato relativo a quello che io immetto come dato nella casella ricerca???
    Per essere chiaro, se io scrivo un nome che non è presente in tabella ricevo il messaggio??? oppure solo se la tabella è a zero???

    Grazie
  • Fai una prova... anzi 2... e ti rendi conto..., anche se tecnicamente una domanda contiene anche la 2° quindi la domanda è malposta.
    Devi ragionare a livello operativo... le maschere sono basate su dati di Tabella, quanto ti ho proposto VERIFICA quanti RECORDS corrispondenti alla ricerca sono presenti... è ovvio che se la Tabella è EMPTY... a prescindere dal CRITERIO... avrai lo stesso numero di RECORDS che avresti se il criterio non fosse soddisfatto ti pare...?
Devi accedere o registrarti per scrivere nel forum
3 risposte