La macro la devi costruire tu di sana pianta...Ma...
Provo a ricostruire il tuo scenario:
Tu hai maschera principale Dipendenti, sottomaschera TNTPadova dove ci sono, fra i tanti campi, Affidate, Consegnate, NonConsegnate, Prese, TotServizi. Se non ho capito male, tu sei riuscito a mettere un codice nei controlli NonConsegnate=Affidate-Consegnate e TotServizi=Consegnate+Prese (adesso la sintassi precisa non la so), che ti danno i risultati che volevi vedere.
NonConsegnate e TotServizi quindi li vedi nella maschera/sottomaschera ma non nella tabella TNTPadova che risulta con questi campi attualmente vuoti. Giusto?
Prima di venire al discorso macro, io creerei una query.
1) Crea una nuova query Calcoli
2) In visualizzazione struttura, importa la tabella TNTPadova, trascina i campi Affidate, Consegnate, Prese.
3) Nelle successive 2 colonne della griglia, scrivi rispettivamente:
NonConsegnate: [Affidate] - [Consegnate]
TotServizi: [Consegnate] + [Prese]
4) Salva e apri la query Calcoli, vedrai i risultati che volevi listati nelle 2 colonne NonConsegnate e TotServizi
5) Assicurati che tutti i record siano nello stesso ordine di come stanno nella tabella TNTPadova (se non lo sono abbi cura di aggiungere alla griglia della query un ulteriore campo che ti garantisca questo ordine, immagino il campo Contatore...). Quindi seleziona tutta la colonna NonConsegnate, Copia, apri la tabella TNTPadova, seleziona tutta la colonna NonConsegnate e Incolla. Fai la stessa operazione per TotServizi.
6) In questo modo hai aggiornato rapidamente tutto il tuo passato.
Veniamo ora alla costruzione della macro:
1) Prima di creare la macro, crea un'altra maschera (di passaggio) che chiamerei TNTPadovaBis avente gli stessi campi della tabella TNTPadova.
2) Vai alle macro e crea una nuova macro che chiamerei Passaggio
3) In visualizzazione struttura macro, scrivi le seguenti azioni:
ApriMaschera: Dipendenti (si aprirà automaticamente anche TNTPadova essendo sottomaschera)
VaiAControllo: TNTPadova (forse questa azione è superflua)
ApriMaschera: TNTPadovaBis
ImpostaValore...
...Elemento: Maschere![TNTPadovaBis]![Affidate]
...Espressione: Maschere![Dipendenti]![TNTPadova]![Affidate]
ImpostaValore...
...Elemento: Maschere![TNTPadovaBis]![Consegnate]
...Espressione: Maschere![Dipendenti]![TNTPadova]![Consegnate]
ImpostaValore...
...Elemento: Maschere![TNTPadovaBis]![NonConsegnate]
...Espressione: Maschere![Dipendenti]![TNTPadova]![NonConsegnate]
ImpostaValore...
...Elemento: Maschere![TNTPadovaBis]![Prese]
...Espressione: Maschere![Dipendenti]![TNTPadova]![Prese]
ImpostaValore...
...Elemento: Maschere![TNTPadovaBis]![TotServizi]
...Espressione: Maschere![Dipendenti]![TNTPadova]![TotServizi]
...ecc...nel senso che questo sarà il cuore della tua macro che puoi migliorare secondo i tuoi gusti. Ad esempio, se tutto va bene, avrebbe senso aggiungere altre due azioni macro
Chiudi: Maschera Dipendenti
Chiudi: Maschera TNTPadovaBis
In sostanza questa macro dice di trasferire i dati che vedi in TNTPadova in TNTPadovaBis, quest'ultima avendo gli stessi campi della omonima tabella, li aggiornerà automaticamente. Attento che questo set di istruzioni serve per un solo record, cioè io mi immagino che tu inserisca i dati in TNTPadova (sottomaschera) e poi con un evento deve partire la macro che aggiornerà tutto di conseguenza un record alla volta...ecc...ecc...ecc...
Non so, spero di non confonderti le idee, ma io il Visual Basic non lo so usare e, in mancanza d'altro mi verrebbe di fare così...ovviamente va tutto testato e poi...non lo so!!!