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