Newsgroup: it.comp.appl.access
Titolo: [Disperato]Immettere filtro in una sottoForm tramite un secondo Form

Salve a tutti, ho un quesito da sottoporvi. 
Ho una maschera che al suo interno contiene una sottomaschera. Quello che vorrei fare è applicare un filtro alla sottomaschera tramite un campo specificato in una seconda maschera diversa da quella che contiene la sottomaschera. 
La cosa è semplice nel caso si voglia applicare un filtro ad una maschera tramite una seconda maschera, cosa che in genere faccio con l'istruzione: 
DoCmd.OpenForm "NomeMascheraDaAprire", whereCondition:= [Condizione del filtro] 
Ma nel caso in cui debba applicare il filtro alla sottomaschera come posso fare? Infatti non posso mettere il nome della Sottomaschera altrimenti mi apre solo il form sottomaschera e parimenti non posso mettere il nome della maschera in cui è inserita la sottomaschera perchè in questo modo il filtro verrebbe applicato alla maschera principale e non alla sottomaschera. 
Ho provato a mettere nella maschera che contiene il bottone per la scelta del filtro (chiamiamola Maschera1) una riga di comando tipo:
Forms!Nome_Mashera2!Nome_Sottomaschera.Form.Filter=[CondizioneFilto]
Dove Maschera2 è quella che contiene la sotomaschera. Purtroppo non accade nulla.
Quale metodo si usa in questi casi? 
Non so se sono stato chiaro ma vi prego aiutatemi 
Un saluto e un grazie a tutti 
Alka
-- 
Alkariel 
------------------------------------------------------------------------
View this thread: 
http://www.itsistemi.net/viewtopic-719863.html
Inviato via 
http://www.itsistemi.net

 sottomaschera.
Devi cambiare al volo il Record Source della sub-form che vuoi filtrare.
Per ritornare alla condizione di non-filtro devi rimettere il
Record Source originale.
Puoi anche chiudere il tutto. Quando riapri la sub-form avrà il
Record Source originale, sempreché chiudendo non ti sia stato
chiesto di salvare qualche altro cambiamento: alla quale risposta
positiva sarà stato salvato anche il Record Source "filtrato".
Se ti fossi complicato la vita definendo le modalità
Pop-up e/o Modal, avresti un problema in più.
Bruno 

 Alka
-- 
Roberto
-----------------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
----------------------------------------------------

Ciao, anzitutto grazie per il tempo che mi hai concesso.
Ho provato a costruire il codice come mi hai suggerito e nel mio caso (in cui la maschera da cui seleziono la combobox si chiama MascheraSelezionaReparto, quella che contiene la sottomaschera MQStrumentiPerReparto e la sottomaschera SottomascheraStrumentiPerReparto) ho inserito nel codice del form di MascheraSelezionaReparto le linee:
Dim MioFiltro As String
 
    MioFiltro = "[Reparto]='" & Me![CmbSelezionaReparto] & " ' "
 
    Forms!MQStrumentiPerReparto!SottomascheraStrumentiPerReparto!Form.Filter = MioFiltro
 
    Forms!MQStrumentiPerReparto!SottomascheraStrumentiPerReparto!Form.FilterOn = True
Solo che quando clicco il pulsante "cerca" a cui ho associato l'azione di filtro mi restituisce il messaggio di errore "Impssibile trovare il campo "Form" a cui si fa riferimento nell'espressione ".
Dove sta la questione? forse invece di Form devo inserire il campo del filtro?.
Come posso fare per aggirare l'ostacolo?
Vi prego rispondetemi!!!
Ciao ci conto


Ho trovato la soluzione. Era un problema di sintassi.
L'istruzione corretta formalmente è la seguente :
Forms!MQStrumentiPerReparto!SottomascheraStrumentiPerReparto.Form.Filter = MioFiltro
 
    Forms!MQStrumentiPerReparto!SottomascheraStrumentiPerReparto.Form.FilterOn = True
Grazie infinitissime Roberto :)
Spero che quando avrò bisogno di aiuto ci sarai sempre :)
Grazie Grazie Grazie
Alka


 Alkariel
-- 
