Dopo due ore di imprecazioni varie mi vedo costretto a chiedere ancora il vostro aiuto.![]()
Il problema è il seguente: ho una maschera di ricerca con 3 campi, due caselle di testo e una casella combinata. La query verifica che i valori inseriti siano validi contemporaneamente.
Se ad esempio inserisco mario come nome e cuba come nazione, se non viene trovato nessun record mi appare il messaggio inserito nel msgbox. Il problema è che i valori del form non vengono cancellati. Credo che il contenuto non ci sia più perchè pur essendo ancora presenti in fase di visualizzazione mi appare il messaggio di inserire almeno un criterio di ricerca. Immagino quindi che sia una sorta di problema di refresh o qualcosa del genere ma non so come risolvere. Spero di essere stato chiaro. Sono abbastanza fuso.![]()
codice:Private Sub btnRicerca2_Click() Dim sql As String sql = "SELECT utenti.id_utente,utenti.cognome, utenti.nome,utenti.centro,utenti.data_nascita,utenti.telef_cellul_1 FROM [utenti] WHERE true " If ((txtCognome = "" Or IsNull(txtCognome)) And (txtNome = "" Or IsNull(txtNome)) And (nazione.Column(1) = "" Or IsNull(nazione.Column(1)))) Then MsgBox "Inserire almeno una chiave di ricerca" Exit Sub End If If txtCognome <> "" And Not IsNull(txtCognome) Then sql = sql & "and utenti.cognome= Forms![cercaUtente2]!txtCognome " End If If txtNome <> "" And Not IsNull(txtNome) Then sql = sql & "and utenti.nome = Forms![cercaUtente2]!txtNome " End If If nazione.Column(1) <> "" Then sql = sql & "and utenti.nazione = Forms![cercaUtente2]!nazione.value " End If sql = sql & "order by cognome,nome;" Me.RecordSource = sql If Me.RecordsetClone.RecordCount = 0 Then Me.txtNome.Value = "" Me.txtCognome.Value = "" Me.nazione = "" MsgBox "Nessun utente trovato. Eseguire una nuova ricerca." Exit Sub Else Me.FilterOn = False Me!intCognome.Visible = True Me!intNome.Visible = True Me!intCentro.Visible = True Me!intNascita.Visible = True Me!intCellulare.Visible = True End If Me.txtNome.Value = "" Me.txtCognome.Value = "" Me.nazione = "" End Sub

Rispondi quotando
