- ベストアンサー
SQLで表示されるリンクテーブルの件数がリンクテーブルマネージャーより多い現象の原因は何でしょうか?
- 仕事でアクセスファイルのリンクテーブル一覧を作成する際、SQLを使用してテーブルの情報を表示させています。
- しかし、表示されるリンクテーブルの件数がリンクテーブルマネージャーで表示されるリンクテーブルの件数よりも多いという不思議な現象が起きています。
- この原因として、削除されたリンクを表示している可能性や、VBAで隠れているリンクテーブルが存在している可能性が考えられます。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
Access2007は持ち合わせていませんが2010では オブジェクト(ナビゲーションウィンドウのテーブル名)上で右クリック 「このグループに表示しない」を選択すれば隠しオブジェクトになります。 表示したい場合は、 ナビゲーションオプションで隠し『オブジェクトの表示』にチェックを入れ グレー表示されているオブジェクト上で右クリック、「このグループに表示」です。 隠しオブジェクトになっている場合はリンクテーブルマネージャには表示されませんね。
その他の回答 (3)
- nicotinism
- ベストアンサー率70% (1019/1452)
#2のTabledefのConnect(接続文字列)にヒントが隠されているかもしれませんが、 当方では、 リンクテーブルでかつシステムオブジェクトであったケースは覚えがないので分からないです。 VBA云々は関係ないだろうとは思います。
お礼
了解しました。ありがとうございました。
- nicotinism
- ベストアンサー率70% (1019/1452)
とりあえず全部表示してみてください。 Access 2007/2010 で「隠しオブジェクト」「システムオブジェクト」を表示したい http://pasofaq.jp/office/access/access2007hidden.htm あるいは、イミディエイトウィンドウで ?currentdb.tabledefs("問題のテーブル名").connect と入力して、Enter キー で何か返ってくればリンクテーブルです。
補足
ありがとうございます。明日朝一番で会社に着いたら試してみます。 なお、一点確認させていただきたいのですが、リンクテーブルがすべてリンクテーブルマネージャー上に表示されると考えては早計という認識でよいのでしょうか。
- bin-chan
- ベストアンサー率33% (1403/4213)
内部で一時ファイル作ってるのかも。 ご自身で把握できてるテーブル名一覧と差を取れば良いのでは?
補足
なるほど一時ファイルですか。 その場合もリンクファイルとして検索されるのでしょうか? 把握できてるテーブル名一覧と差を取ることで、どのテーブルが差分なのかは把握できているのですが、それらのテーブルがどこでどういう風に使われているのか分からない状況です。(結果として、SQL表示か、リンクテーブルマネージャーのいずれが正か分からない状況です。) ちなみにご存知なら教えていただきたいのですが、「外部データの取り込み」のインターフェイスからリンク設定せずに、VBA内でこっそりリンク処理されている場合は、リンクテーブルマネージャには該当テーブルが表示されないのでしょうか。 何卒よろしくお願いいたします。
お礼
お世話になっております。 どういう要因でリンクテーブルがシステムオブジェクトになるのか知りたいところですが、十分有益なご回答を頂いたため、明日中に誰からも追加コメントありませんでしたら、こちらでベストアンサーさせていただきます。
補足
お世話になっております。 ご指摘の通り、隠しオブジェクトとシステムオブジェクトを表示させたところ、差分のリンクテーブルが現れました。 ありがとうございます。 最後に一点確認させていただきたいのですが、隠しオブジェクトはユーザが意図的に隠しオブジェクトに設定したとわかるのですが、システムオブジェクトとなっているリンクテーブルはどういう理由でシステムオブジェクトとなるものなんでしょうか?やはりVBA関係というところでしょうか?