Newsgroup: it.comp.appl.access
Titolo: Filtrare sottomaschera attraverso campi non associati

Salve a tutti,
è da un paio di giorni che cerco su google un codice VBA che possa aiutarmi a risolvere il mio quesito: come filtrare due sottomaschere attraverso una maschera  principale che contiene due campi non associati nei quali posso inserire i volori che serviranno per filtrare le due sottomaschere?
 
i due valori serviranno ad indicare il valore minimo e il valore massimo della ricerca. 
 
Per semplificare il problema utilizzerò nomi standard. In pratica:
- La maschera principale "Masc1" contiene due campi non associati "testo110" e "testo112". 
- Le sottomaschere Sub1 e Sub2 che sono associate alla Masc1 attraverso un campo univoco. Entrambe contengono un campo "testo100"
 
Io vorrei che digitando in testo110 (valore minimo per la ricerca) e in testo112 (valore massimo per la ricerca), le due sub (sub1 e sub2) visualizzassero in testo100 tutti i record compresi fra i due estremi.
 
 
Fino a questo momento riesco a filtrare solo sulla base del valore digitato in testo110 in una suola sub, attraverso il codice seguente, inserito in un comando all'evento click:
 
Me!SOTecBOLLE.Form.Filter = "[BOLLE.ID_BOLLA] like '" & Me.Testo110 & "'"
 
Spero di essere stato chiaro e che possiate aiutarmi.
grazie in anticipo

 Spero di essere stato chiaro
 
Non sono sicuro, p. e. non è chiaro se "testo100" e un campo o controllo,
quale tipo di dati ha e certo "sub" è già una cosa diversa in VBA. ;-)
Se si tratta di numeri prova così in un evento ragionevole p.e.
"dopo aggiornamento" di Testo112:
 
Me!SOTecBOLLE.Form.Filter = _
  "CampoNonControlloCheVuoiFiltrare >= " & Me!Testo110 & " And " & _
  "CampoNonControlloCheVuoiFiltrare <= " & Me!Testo112
 
Me!SOTecBOLLE.FormOn = True
 
-- 
Ciao
Karl
*********
Access FAQ:  
http://www.donkarl.com/it
 
 
 

Ciao Karl, è sempre un piacere leggerti.
il campo testo100 (nome che ho usato per fare l'esempio in realtà si chiama  ID_BOLLA (Campo numerico) e si trova su tutte e due le sottomaschere.
 
Ho usato sub1 e sub2 per indicare le sottomaschere SOTecBOLLE e SOTecESTRAT. Scusa se ho creato confusione.
 
Ho inserito il codice che hai postato ma per tutta risposta ricevo questo messaggio: Errore di run-time 438. Proprietà o metodo non supportato dall'oggetto.
 
Quando vado al debug segna in giallo la stringa: Me!SOTecBOLLE.FormOn = True.
 
Ho provato anche questa stringa 
Me!SOTecBOLLE.Form.Filter = "[BOLLE.ID_BOLLA]>=" & Me!Testo110 And "[BOLLE.ID_BOLLA] <=" & Me!Testo112
 
e mi dice errore di tun-time 13. Tipo non corrispondente
 
non so che fare!!! :(

 e mi dice errore di tun-time 13. Tipo non corrispondente
 
Prova così:
 
Me!SOTecBOLLE.Form.Filter = _
  "ID_BOLLA >= " & Me!Testo110 & " And " & _
  "ID_BOLLA <= " & Me!Testo112
 
Me!SOTecBOLLE.FilterOn = True


nessun errore visualizzato, ma non accade nulla.

 nessun errore visualizzato, ma non accade nulla.
 
Prova questo come ultima riga:
 
Me!SOTecBOLLE.Form.FilterOn = True


un piccolo passo avanti lo abbiamo fatto! :D
Adesso mi da un altro messaggio errore 3709
"chiave di ricerca non trovata in nessun record".
In effetti nelle tabelle che utilizzo non esiste nessuna chiave primaria, perché sfrutto i dati .dbf che vengono inviati al mio programma di gestione riviste.
In pratica sono riuscito a trasformarli in .mdb e poterli utilizzare così in access.
Ho notato che se anche non esiste chiave primaria, i campi "univoci" sono indicizzati. non so se queste informazioni possono aiutarti a capire meglio la mia situazione

Così per curiosità ho provato a selezionare il filtro predefinito di access (per intenderci l'imbuto con la saetta gialla) e funziona... si può recuperare il codice che utilizza quel programma??

HELP ... PLEASE!

 HELP ... PLEASE!