Ciao a tutti,
Ho un problema di aggiornamento di una sottomaschera, di un database creato in Access 2007, che non sono riuscito a risolvere, nemmeno consultando i forum presenti al' interno di HTML, che questo problema lo hanno già trattato.

Per essere più chiaro possibile, riporto di seguito una breve descrizione del progetto, che stò elaborando:

La porzione di database, è formata da 5 tabelle (che di seguito riporto), di cui quella principale è quella denominata “PERSONE”, che presenta relazione molti a molti, con la tabella “CATEGORIE”, ma anche con la tabella “INDIRIZZI_MAIL”.



A questo punto ho creato una serie di query, di cui alcune indispensabili per la maschera “PERSONE4a”, che mi consente di inserire i dati, che poi vanno a popolare le 5 tabelle che costituiscono il mio database.




La Maschera “PERSONE4a” (visualizzata qui sopra), è costituita innanzitutto dai campi che si rifanno alla tabella “PERSONE”, che sono COGNOME, NOME, DATA NASCITA, DATA REGISTRAZIONE, quindi dalla sotto maschera “INT-PERSONE-MAIL4” (contraddistinta da etichetta “INDIRIZZI MAIL:”) la cui origine record è una query (non salvata con nome), comprendente tutti i campi delle tabelle “INDIRIZZI_MAIL” e “INT_PERSONE-MAIL”, e per finire dalla sottomaschera “CATEGORIE_01” (contraddistinta da etichetta “CATEGORIA DI APPARTENENZA:”) che ha come origine record una query, ha cui ho dato nome: “2012_09_15_categorie-intersezione”.

La sottomaschera “CATEGORIE_01”, presenta una casella combinata, che permette di attribuire all’ utente, una certa categoria (nell’ esempio riportato sopra all’ utente Rossi Mario, è stata attribuita la categoria “Disegnatore”), che pesca da quelle registrate nelle sottostanti tabelle e quindi query, che costituiscono la vera e propria base di dati. Ci è possibile quindi recuperare una categoria tra quelle presenti, ma non inserirne una nuova, ecco che nella parte bassa, la sottomaschera, presenta un pulsante “NUOVA CATEGORIA:”, che apre la maschera “CATEGORIE” (riportata qui sotto) che ci permette di aggiungerne di nuove.




Nella maschera “CATEGORIE”, ho creato un pulsante che si chiama “CHIUDI” al quale ho abbinato una macro, che Su clic, chiude la maschera.
Il mio obbiettivo, a questo punto sarebbe, poter trovare alla chiusura della maschera “CATEGORIE”, la sottomaschera “CATEGORIE_01” (contraddistinta da etichetta “CATEGORIA DI APPARTENENZA:”) della maschera “PERSONE4a”, aggiornata.
A questo punto consultando i vari forum, ho appreso che innanzitutto, bisogna convertire la macro in codice VBA, cosa che ho fatto creando un modulo, visibile anche nel riquadro di spostamento di Access.

Un primo problema che ho incontrato è che non sono riuscito ad associare direttamente il modulo al pulsante “CHIUDI”. Dopo vari tentativi, ho copiato il codice all’ interno della finestra “Form_CATEGORIE” (visibile qui sotto), in corrispondenza del comando7, che si riferisce proprio al pulsante di cui sopra.





Poi ho provato a inserire il codice trovato come indicazione nei forum di HTML, quindi :

Forms!PERSONE4a!CATOGORIE_01!IDPRODOTTO = Me. IDPRODOTTO

Riuscendo a ottenere esclusivamente il seguente messaggio di errore:




Ho provato anche a scrivere il seguente codice:

Forms!PERSONE4a!CATEGORIE_01.Requery

senza ottenere niente, nemmeno il messaggio di errore.



Non capisco poi, perché nella finestra progetto della schermata Visual Basic, non siano presenti tutte le maschere del database? Chiedo questo perché, in un database, che ho creato tempo fa, ho risolto un problema identico a questo, in maniera molto semplice.
Infatti esistendo nella finestra progetto la sottomaschera in questione, che per comodità chiamiamo “PIPPO”, mi è stato sufficiente, scrivere il seguente codice:
Form_PIPPO.Refresh

Ringrazio già da adesso chi vorrà aiutarmi a risolvere il problema esposto.
Ciao
Carlifor.