Newsgroup: it.comp.appl.access
Titolo: Filtro maschera

E' possibile mano a mano che si scrive qualcosa in una casella di testo ad
esempio associata al campo cognome, filtrare in tempo reale la maschera
stessa ?
Grazie, Angelo.

 stessa ?
Prova a fare una me.requery sull'evento keypress della casella.
La query della maschera deve avere un criterio sulla proprietà text della
casella di testo
Antonio

 ha scritto nel messaggio
news:iqPz9.17583$Zn2.4...@twister1.libero.it...

Vai sul Sito Comune (link qui sotto) e nella Sezione Forms leggiti la FAQ di
Sib intitolata "Come creare un controllo di ricerca".
Penso faccia al caso tuo
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 Roberto
Fatto, funziona la ricerca ma non mi filtra i record della maschera ...
Angelo.

 Angelo.


Come al solito, grazie a voi tutto, funziona magnificamente.
Vorrei porvi altri 2 quesiti:
1)
Uscendo dal campo su cui digito il filtro bisognerebbe disattivare il filtro
se tale campo è vuoto.
In realtà praticamente non filtra nulla è che per una questione di forma e
per evitare confusione vorrei togliere automaticamente la scritta "di x
(Filtrati)" vicino i record.
2) E' possibile realizzare lo steso tipo di filtro per i campi "Si/No" e
come ?
Grazie per la tempestività e per la precisione, saluti, Angelo.

 Grazie per la tempestività e per la precisione, saluti, Angelo.
--


 End
Purtroppo non funziona, ho provato anche su evento "Uscita"
A.

 ha scritto nel messaggio
news:9x4A9.20304$Zn2.5...@twister1.libero.it...

Risolto grazie:
Private Sub Ricerca_LostFocus()
            If Me!Ricerca = "" Then
                Me.FilterOn = False
            End If
End Sub
Per quanto riguarda il campo si/no dovrei filtrare i campi ad uno ad uno con
il segno di spunta sempre da maschera:
Esempio:
Se spunto il quadratino di filtro relativo al campo "sposato" mi deve
filtrare tutte le persone sposate ...
Spero di essere stato chiaro ...
Ciao, Angelo

 Ciao, Angelo


 End Sub
Funziona quando "spunto" la casella di controllo, quando tolgo la spunta mi
fa vedere *solo* i non sposati.
A.
PS
Se sto rompendo dimmelo pure ...

 ha scritto nel messaggio
news:2x7A9.20887$8E3.6...@twister2.libero.it...

Se quando togli la spunta vuoi vrdere tutti i record, prova così:
Private Sub CercaSposato_AfterUpdate()
If Me!CercaSposato = True Then
    Me.Filter = "Sposato =" & Me!CercaSposato
    Me.FilterOn = True
Else
    Me.FilterOn = False
End If
End Sub
--


Ok, adesso č rimasto l'ultimo inconveniente (spero) e cioč che nella
maschera ci sono piů di un filtro di conseguenza ogni qualvolta entro in un
campo filtro e uscendo lo lascio vuoto mi disabilita *tutti* i filtri ...
ovviamente vale anche per la casella di controllo ...
Angelo

 ha scritto nel messaggio
news:Gg8A9.21216$Zn2.6...@twister1.libero.it...

Dai Roby l'ultimo sforzo :o)
A.

 Angelo
Quando in una maschera ci sono più controlli che servono a filtrare in And
la maschera non si imposta il filtro analizzando un controllo alla volta, ma
si inserisce nella maschera un pulsante di comando; il pulsante verrà
pigiato dopo aver operato debitamente sui controlli; con il pulsante si
abilita o si disabilita il filtro valutando complessivamente i valori
contenuti nei vari controlli.
Di fatto, a fronte dell'evento "Su clic" del pulsante di comando, si crea
DINAMICAMENTE una stringa dei criteri del filtro della maschera analizzando
i valori dei vari controlli: alla fine dell'analisi, se la stringa è vuota
vuol dire che tutti i controlli sono vuoti e quindi si disabilita il filtro
della maschera
    Me.FilterOn = False
in caso contrario si imposta con il valore della stringa il filtro della
maschera e lo si abilita; se la stringa si chiama strCriteri:
    Me.Filter = strCriteri
    Me.FilterOn = True


 ha scritto nel messaggio
news:qk9A9.21277$8E3.6...@twister2.libero.it...
Roberto purtroppo mi sono tuffato dentro un lavoro più grande di me (date le
mie conoscenze di Access) ... ma che ormai dovrei completare.
Avrei quindi bisogno di un esempio per riuscire a realizzare i filtri in
"and" dentro una maschera.
Ipotizziamo che nella maschera ci siano solo 3 campi:
Nome
Cognome
Sposato (campo si/no)
e che io debba filtrare tutte le persone il cui cognome cominci per  "Rossi"
e che siano sposate.
Ovviamente devo inserire nella maschera una casella di testo per digitare il
filtro cognome che appunto chiamero "filtrocognome" ed una casella di
controllo per filtrare il campo sposato che chiamerò "filtrosposato"
Poi un pulsante che mi attivi e sisattivi i filtri in base a quello che c'è
nella casella
di testo e nella casella di controllo. Ovviamente, come dicevi nella
precedente mail, il tasto prima di attivare il filtro deve controllare che
almeno una delle 2 caselle di filtro sia <>""
Fatto ciò sono nelle tue/vostre mani
Ciao e sempre grazie, Angelo

 Ciao e sempre grazie, Angelo
A fronte dell'evento "Su clic" del pulsante di comando genera il seguente
codice VBA:
Dim strCriteri As String
strCriteri = ""
If Me!filtrocognome <> "" _
And Not IsNull(Me!filtrocognome) Then
    strCriteri = "Cognome Like " & Chr$(34) & _
    Me!filtrocognome & "*" & Chr$(34)
End If
If filtrosposato = True Then
    If strCriteri <> "" Then
        strCriteri = strCriteri & " And "
    End If
    strCriteri = strCriteri & _
    "Sposato = True"
End If
If strCriteri <> "" Then
    Dim Rst As Recordset
    Set Rst = Me.RecordsetClone
    Rst.FindFirst strCriteri
    If Rst.NoMatch Then
        MsgBox "Non esistono record " & _
        "che soddisfano i criteri " & _
        "della ricerca"
        Set Rst = Nothing
        Exit Sub
    End If
    Set Rst = Nothing
    Me.Filter = strCriteri
    Me.FilterOn = True
Else
    Me.FilterOn = False
End If
--


Mi ero dimenticato di dirti che il codice VBA che ti ho postato fa
riferimento alla libreria Microsoft DAO, pertanto se usi una versione di
Access successiva ad Access 97, devi inserire nel tuo database i riferimenti
a tale libreria e sotituire la riga di codice:
Dim Rst As Recordset
con
Dim Rst As DAO.Recordset


Roberto grazie di tutto. Funziona perfettamente.
Che dirti ... a buon rendere ...
Angelo.