DAO と Access の「隠しオブジェクト」
よく混同されますが、DAO と Access の「隠しオブジェクト」は別ものです。
1.DAO の隠しオブジェクト
DAO の隠しオブジェクトは、TableDef オブジェクトのみで、Attributes プロパティに dbHiddenObject が設定されているものです。
ちなみに、この設定がされたテーブルは、Access のデータベースウィンドウにも表示されません。
2.Access の隠しオブジェクト
Access の隠しオブジェクトは、Access が管理するすべてのオブジェクトに対するもので、Access のメニュー [表示(V)] - [プロパティ(P)] で表示されるプロパティダイアログの "属性" で、"隠しオブジェクト(D)" にチェックされたものです。
Access 上でユーザーが設定した隠しオブジェクトには、システムテーブル MSysObjects のフィールド Flags に 8 が設定されるようです。
データベースウィンドウへの表示・非表示は、Access がアプリケーションとして Flags の値により判断し、切り替えているようです。