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

Ho una maschera continua, che è basata su una query per motivi di
ordinamneto, da dove vorrei selezionare con una casella combinata "anno"
dal campo MiaData (campo testo di 4 caratteri)un anno che è raggrupato
Il comando per filtrare è il sottostante ma va in debug ogni volta che
seleziono nonostante che nel filtro resta il campo con l'anno scelto
Private Sub ANNO_AfterUpdate()
    Me.Filter = "[MiaData] = " & Me!ANNO
    Me.FilterOn = True
End Sub
Questo serve per eliminare la selezione
Private Sub Comando43_Click()
    DoCmd.ShowAllRecords
End Sub
Dove è che sbaglio
Grazie Giovanni
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Grazie Giovanni
Non ho capito; [MiaData] contiene una data, un numero (anno) o un testo 
(anno)?
Comunque i tre casi sono:
(1)
Me.Filter = "Year([MiaData]) = " & Me!ANNO
Me.FilterOn = True
(2)
Me.Filter = "[MiaData] = " & Me!ANNO
Me.FilterOn = True
(3)
Me.Filter = "[MiaData] = '" & Me!ANNO & "'"
Me.FilterOn = True
Oppure dovresti indicare il messaggio di debug...
Ciao.
-- 
Sergio MAZZA 

 ha scritto nel messaggio
news:e4kacc$qa8$1...@area.cu.mi.it...

Innazitutti grazie della risposta e ho usato il metodo tre che ha migliorato
e risolto la mia richiesta.
Pero il problema che mi resta è che la selezione della maschera continua
deriva da un filtro che avviente da un'altra maschera che seleziona le
ordinanzioni di  un cliente con le varie ordinazioni e fin qui tutto bene
nella maschera continua appaiono tutte le ordinazioni nei vari anni.
Ma quando uso il filtro, casella combinata,  nella maschera M_PROD con il
consiglio n. 3, che gentilmente mi hai indicato,  i record che compaiono
corrispondono si all'anno scelto ma mi perde la selezione del cliente che
avevo scelto nella maschera precedente con il comando sottoindicato
Private Sub Comando60_Click()
On Error GoTo Err_Comando60_Click
    If IsNull(Me![Matr_acq]) Then
             MsgBox "ATTENZIONE!!! Prima si deve scegliere il
cliente-acquirente"
    Else
       DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, ,
acMenuVer70
 '     DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, ,
acMenuVer70
       DoCmd.OpenForm "M_PROD", acNormal, , "[Matr_acq]=" & [Matr_acq]
    End If
Exit_Comando60_Click:
    Exit Sub
Err_Comando60_Click:
    MsgBox Err.Description
    Resume Exit_Comando60_Click
End Sub
Grazie se mi rispondi
Giovanni

 ha scritto nel messaggio news:446e1690$0$36935$4faf...@reader3.news.tin.it...

Il filtro applicato tramite l'OpenForm puoi leggerlo nell'evento "su apertura", della seconda form, tramite la proprietà Filter (la 
stessa che utilizzi per filtrarla di nuovo).
Il problema è che non devi perderlo ogni volta che riapplichi il nuovo filtro dell'anno; io memorizzerei il filtro del cliente in 
una casella di testo non associata e nascosta:
es. (evento su apertura)
me!oldFilter = me.filter '<-- memorizzo il filtro
(evento della casella combinata)
Me.Filter = me!oldFilter & iif(not isnull(me!oldFIlter), " And ",null) & " [MiaData] = '" & Me!ANNO & "'"
me.filteron = true
Ciao.
-- 
Sergio MAZZA