Thanks for responding. The sql is;
SELECT requirements.reqId AS requirements_reqId, requirements.reqRef, requirements.reqShortName, requirements.reqDescription, reqModules.reqId AS reqModules_reqId, reqModules.modId AS reqModules_modId, Module.moduleName, Module.modDescription, Module.modId AS Module_modId, requirements.ModifyDate
FROM requirements INNER JOIN ([Module] INNER JOIN reqModules ON Module.modId = reqModules.modId) ON requirements.reqId = reqModules.reqId
WHERE (((Module.moduleName)=[Forms]![frmModule].[moduleName]) AND ((requirements.ModifyDate) Between [Enter Start Date (dd/mm/yy)] And [Enter End Date (dd/mm/yy)]));
I've just been playing some more and it appears to have been resolved by changing the moduleName field property to 'Index (no duplicates)'. I was expecting an error but didn't get one and have run it 5 times now. Still no idea what the cause is though.
I will test it again tomorrow as I have been starting at it so long today I fear I am no longer believing my eyes....