To evaluate the sizes of all Access objects, you run into a problem. Some of the objects aren't visible as such. Some of the objects have two or three different sizes depending on how you ask the question. The only REAL way to do it (and I don't claim to have even tried this, much less done it) is to reverse-engineer the database file - but to do so is to RADICALLY violate the End User Licensing Agreement (which is WHY I have not done this.)
If you have text fields in your database, you have two sizes already - the maximum allocation for all fields in the table and the actual size based on some fields being shorter than their maximum allowed sizes. For instance, a Text(255) will take up its descriptor, probably about 8 bytes, plus its data, which could be anywhere from 0 (empty string or null) to 255 bytes long. So which length did you mean? Actual or potential?
Then, of course, we have to consider that we cannot account for deleted records in any table since we can't see them. So that is a third table size... the size of all extant records PLUS all deleted-but-not-yet-reclaimed records.
Queries have no size unless they are open, but the querydefs DO have a size - the length of the SQL string. And because we don't have the right to reverse-engineer, it becomes questionable as to just how much we know about the querydef format.
Form objects are collections (controls) within collections (sections) within collections (tab pages) within collections (Forms). The structures associated with each element will vary, so there is some really complex enumeration going on, and for label controls (or any other object that has a caption), there is a variable-length string there, too. Reports have the same problems.
Macros are tough to get, but I recall that they are stored as action names.
Modules are organized into variable-length lines, up to 65535 lines per module. But the "gotcha" is that we don't see the compiled code. At best it is a binary large object internal to the DB, visible as a BLOB in the MSysObjects table but it is hard to associate the BLOB with a particular module. And if we can't see it, we can't size it.
So ... before you ask for the size of something, be sure to define your terms and recognize that you can't always get what you might want.