Buonasera a tutti.
Premetto che ho provato a risolvere cercando in altre discussioni ma le soluzioni trovate continuano a non funzionare.
Nel mio database ho una tabella "Consegne" e una tabella "Turni". Più consegne possono essere in più turni, quindi la relazione che li lega è molti a molti. Per farlo ho realizzato una terza tabella "Rel_TC" relazionata in questo modo:

Per la visualizzazione ho crato una maschera inserendo i campi sia di "Turni" che di "Consegne". Così facendo la creazione guidata ha generato una maschera "Turni" con layout giustificato e sottomaschera collegata "Consegne" con layout tabulare: scorrendo i record di "Turni" automaticamente "Consegne" visualizza la lista dei record associati tramite la relazione contenuta nella tabella "Rel_TC"
Ho inserito la maschera "Turni" come sottomaschera della main form "Principale", quindi la struttura è maschera "Principale" > sottomaschera "Turni" > sottomaschera "Consegne".

Al caricamento "Turni" si sposta sull'ultimo record. Tramite la maschera popup "Inserisci", apribile tramite un pulsante della maschera "Principale", creo un nuovo record per la tabella turni.
Alla chiusura di "Inserisci", vorrei che la sottomaschera "Turni" si aggiornasse e si posizionasse sull'ultimo record, ovvero quello appena inserito.
Questo il codice in chiusura di "Inserisci"
Private Sub Form_Close()
Forms!Principale!Turni.Form.Requery
Forms!Principale!Turni.SetFocus
DoCmd.GoToRecord acActiveDataObject, , acLast
End Sub
Così facendo "Turni" si aggiorna, ma si posiziona sul primo record. Ad andare sull'ultimo record è invece "Consegne", sottomaschera di "Turni". Facendo una prova, se elimino la sottomaschera "Consegne", allora "Turni" si posiziona sull'ultimo record.
Spero di non aver proposto un dubbio banale e di essere stato chiaro nella spiegazione.
Grazie in anticipo
Federico