A programmer in another forum gave me this advise and i following it I have found that my DBase is much smaller as the calculations are done "on the fly" -
"Storing calculated values in a table violates the Third Normal Form (3NF), which means it's generally a bad thing to do. First, it wastes space in your database and on your hard drive. Second, it will generally make anything realted to that table slower, especially updates. Third, and this is most important, you will have to design your user interface so that if either the start date or the end date changes, the duration is automatically updated. If all you had to do was worry about changes made from your form, it would be enough extra work, but a user can enter data through tables and queries, too. Since Access (technically, the Jet Database Engine) does not support triggers, like more robust database engines do, you would have to make it impossible for the user to access the tables and queries directly, which means implementing user level security. Believe me, all this is much more trouble than simply calculating the value for Duration 'on the fly' in your queries, forms and reports.
So, I recommend NOT trying to store this calculated value in the table, unless you have a very good reason for it, and are prepared for a lot of extra work. "
Cheers
Balgrath
