I disagree and don't have any problems with querying MSysObjects.
It is read only and you cannot do any harm by querying it.
As far as I am concerned, querying MSysObjects is a very useful tool in any serious developer's toolkit
However I would modify the query to get all local non-system tables:
Code:
SELECT MSysObjects.Name, DCount("*","[" & [Name] & "]") AS RecCount
FROM MSysObjects
WHERE (((MSysObjects.type)=1) AND ((MSysObjects.Flags)=0))
ORDER BY MSysObjects.Name;
You can reinstate the filter for tables starting tblPartsB* if you wish.
Code:
SELECT MSysObjects.Name, DCount("*","[" & [Name] & "]") AS RecCount
FROM MSysObjects
WHERE (((MSysObjects.Name) Like "tblPartsB*") AND ((MSysObjects.type)=1) AND ((MSysObjects.Flags)=0))
ORDER BY MSysObjects.Name;