In my experience, every table has a row in sys.sysindexes that can be used to tell the number of rows in the table.
SELECT i.rowcnt, o.name
FROM sys.sysobjects o JOIN sys.sysindexes i ON i.id = o.id
WHERE o.xtype = 'U' AND i.indid IN (0, 1)
ORDER BY o.name
Because these values are stored in the system tables, this is not an expensive query.