I see that you've commented out the CreateQueryDef & QueryDefs.Delete. That would have definitely created bloating. If there's still other like that, you'll want to comment that, too. It's OK to change SQL property of an existing QueryDef, but generally avoid CreateQueryDef.
DAO does have a qry...