1. Revisa los parámetros de OpenSchema que tienes para filtrar esos casos:
Set objRecordset = TuObjetoConnection.OpenSchema(adSchemaTables,Array(Empty,Empty,Empty,"TABLE"))
En:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/his_2004Main/htm/_sna_adschematables_oledb.asp
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/his_2004Main/htm/_sna_openschema_method_oledb.asp
2. Las sentencias SQL para acceder a las tablas del sistema las implementa cada DBMS -si es que las implementa, puede no hacerlo-, en caso de SQL Server se hace a través de un SELECT a la tabla sysobjects, para eso se inventaron OpenSchema y ADOX para encapsular esa funcionalidad y que la misma sentencia sirva para varios DBMS.