Pat, i am doing exactly that. I call the dmax from a query!. The query is the basis of the 'many' subform for customer quotes. I pass the QuoteID from the main form to the query to return only the records with the QuoteID of the main form. It is unlikely that this subform would contain more than a dozen lines.
But, the Query referred to in the 'dmax' could contain several thousand records! And will grow as more products are added. If i called
@MarkK's routine in post 10 instead each time, is that better?.
I'm very keen to adopt 'best practice' & keen to learn as i'm very likely to encounter similar situations in the future. When i started out, i was doing most of the calcs on the form! (Pretty much frowned appon for good reason). The database worked this way for several years without a glitch, but now it is up for a rewrite to add additional functionality.
Ps. I had a bucket load of embedded images too! So i have learn't something along the way!
Appreciate your time.