Il modo più semplice ed efficace è quello di aggiungere un campo alla tabella PrezzoUnitario. Solo che, a mio avviso, essendo strettamente legato a variazioni nel tempo:
Come fai a ritrovare il punto di cambio prezzo senza l'uso di un campo Data?
Io ti consiglio vivamente di aggiungere il campo Data, con valore predefinito
=Date()
corrispondente alla data in corso, così non hai il fastidio di doverla digitare ogni volta.
Quanto al campo PrezzoUnitario (di tipo Valuta), anche qui puoi stabilire un valore predefinito che non devi digitare in tabella, ma soltanto cambiare nella proprietà "Valore predefinito" ogni qualvolta vige un cambio di prezzo.
Poi, per quanto riguarda il campo Prodotto in maschera, immagino non troverai difficoltà a ricostruire la formula.
silene ha scritto:
Una soluzione semplice sarebbe quella di chiudere il DB e aprirne un altro ad ogni variazione di costo ma mi sembra una soluzione alquanto elementare.
Sbagliato concettualmente.