• ベストアンサー

Accessの隠しオブジェクト

 操作者にテーブルやクエリーを触らせないように全て隠しオブジェクトにしようと思っています。  しかし、一度隠しオブジェクトにしたリンクテーブルのリンク先をVBAから変更すると、隠しオブジェクトではなくなってしまいます。  また、クエリーのSQLをVBAから修正しても同じです。  VBAで、テーブルやクエリーオブジェクトを隠しオブジェクトにすることは可能なのでしょうか? 当方、AccessXPです。

質問者が選んだベストアンサー

  • ベストアンサー
  • AlexSuns
  • ベストアンサー率67% (78/115)
回答No.1

Applicationオブジェクトの「SetHiddenAttribute」メソッドにて実現可能でしょう

TAK_999
質問者

お礼

ありがとうございました 早速確認してみましたが、申し分ありませんでした。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ACCESS クエリのリンクテーブル変更できない

    ACCESS2007-2010にて、リンクテーブルの場所変更をリンクテーブルマネージャから行いました。 リンクテーブルマネージャでのリンク先は新しい場所が表示され、テーブルオブジェクトをダブルクリックすると参照もできます。 ただし、既存のクエリを実行すると、"ファィル C:\xxx\xxxx.accdb"が見つかりませんでした。" のエラーとなります。この"C:\xxx\xxxx.accdb"は、変更前のリンク先です。クエリで定義しているテーブルはのリンク先は変更できないのでしょうか。

  • accessオブジェクトの名前、全角と半角どちらが

    これからアクセスでテーブルをいくつか作ろうと思うのですが オブジェクト名は全角と半角どちらがいい、などはありますか? vbaで操作するつもりです。 vbaで使いやすいのは全角と半角とではどちらでしょう? よろしくお願いします。

  • SQLサーバーに保存してあるクエリをアクセスで開くには?

    SQLサーバーに保存してある「クエリ1.sql」をアクセスで開くにはどうすればいいでしょう? アクセスで「リンクテーブル」→「ODBC接続」 でテーブルのリンクはできているのですが クエリをリンクするにはどうすればいいでしょうか? 宜しくお願い致します。

  • Access リンクテーブルをバックアップ

    お世話になります。 現状、リンクテーブル(10個ほど)をバックアップするのに、それぞれ テーブル作成クエリでローカルにテーブルを作成しております。 この方法だと、SQLサーバー上でテーブルのフィールドを追加したり フィールド名が変わる都度、テーブル作成クエリを作り直さないと いけません。 頻度的にそれほどないので、その都度作り直せばよいのですが 忘れてしまいます。。 なにかよい方法はございますでしょうか。 サーバー上でテーブルに修正が入った場合、リンクテーブルマネージャー でリンクし直す必要があるかと思いますが、その辺も踏まえて ご教示頂けると幸いです。 宜しくお願い致します。

  • ACCESS 不要なオブジェクトの削除

    お尋ねします。 ACCESS初心者です。 OSはXPのPRO、ACCESSは2003を使っています。 いろいろ試行錯誤しながらDBを作成しているうち、テーブルやクエリなどのオブジェクトがかなりたまってしまいました。 パフィーマンスを上げるため、DBを整理して不要なオブジェクトを削除したいのですが、分析方法がわかりません。 テーブルとクエリはリレーションを見ればつながりがわかるのですが、フォームやレポートなどはひとつひとつデータソースを調べるしかないのでしょうか? どなたか教えてください。

  • Access2010のVBAにて(変数の宣言)

    Access2010にて複数のフォーム内で、「sql」という変数を宣言しています。 宣言例) Dim sql As String (sql は小文字) それが、あるときを境に、全て「SQL」となってしまいました。 一括置換でプロジェクト内の全ての「SQL」の宣言箇所を 小文字の「sql」に変換してみたのですが、置換作業が終わった直後に やはり大文字の「SQL」に戻ります。 特にこれといって動きに支障があるわけではないのですが、 他の変数の宣言を小文字で統一している事もあり、気になります。。。 なお、Accessでオブジェクト名を間違えて半角カナなどで 一度宣言してしまうと、その後オブジェクト名を修正しても、 VBAコード内では半角のオブジェクト名が自動補完されてしまいますよね。 これと同じような現象でしょうか。 これはAccessのバグになるのでしょうか。 それとも修正方法があるのでしょうか。 修正方法や対策をご存じの方は教えて頂けませんでしょうか。 宜しくお願い致します。

  • アクセステーブル、リンクとローカルで違いはある?

    Access2003からSQLServerにリンクテーブルを張ったアプリケーションの作成をしています。 本番リリース時にはすべてのテーブルがリンクテーブルになる予定ですが 開発時にはローカルテーブルで開発をしたいと考えています。 理由は、DBにテスト用のゴミデータを追加したくないことと、 セキュリティの関係で接続出来るマシンが限られるためです。 現状の開発方法としては、 テーブルに一度リンクを張り、テーブル追加クエリでローカルにテーブル構造とデータを退避。 手動で主キーを定義して、そのテーブルを実体をみなして開発をしています。 SQLレベルではローカルテーブルもリンクテーブルも同等の扱いだと思っているのですが 何か制限事項などがあるのであれば教えていただきたいです。 なお、ACCESSからはDBを参照するのみで追加・更新は一切無しません。 追記。 クエリからクエリを参照して、さらにSQL内でサブクエリも記述しています。 その為、度々「クエリが複雑過ぎます。」みたいなメッセージが表示されています。 複雑というより無駄に長いだけだったりするのですが、 ローカルテーブルなら発行出来たのに、 リンクテーブルは発行出来ないなどあれば開発に支障が出ますのでよろしくお願いします。

  • RAD StudioでMDBのクエリのアクセス。

    RAD Studioのコンポーネントを使用して、Microsoft AccessのMDB上のクエリを 読み込んだり、または実行したりできるでしょうか? ( 例えば、VBAだと、DoCmdのOpenQuery のようなもの ) 現在、TADOQueryにSQL分を、指定して、開いたり実行したりしていますが テーブルの内容が変わるたびに、SQL文を修正しなければならないので MSAで編集して、クエリとして保存すれば、非常に便利です。 以上よろしく、お願いします。

  • accessでクリックしたら画像を表示させたい

    本などのデータベースを作っているのですが、表紙の画像データを表示したい場合、簡単で良い方法はないでしょうか? 具体的には、テーブルに画像用のフィールドを設けて、そこをクリックすると画像が表示されるようにしたいのです。 フォームで表示させるのでは無く、レコードの一覧が見れるテーブルやクエリで利用したいです。 VBAはよくわからないので使えません。 こうやったら簡単に出来るのではと、自分でいろいろ試してみたのですが、出来ない部分があります。 試した内容を記しますのでアドバイスを頂けたら幸いです。 もちろん、その他の簡単な方法があればその方法を教えてくださっても結構です。 今まではOLEオブジェクト型を使用して画像ファイルからドラック&ドロップで埋め込んでいたのですが、レコードが増えてファイルサイズが大きくなってしまいました。 ですので、今回リンクを使って画像を表示させたいと思い、2種類の方法を試しました。 1つ目はOLEオブジェクトのフィールドを設けてオブジェクトをリンクで入れてみました。画像は表示されるのですが、パソコンの買い替えなど、他のパソコンにDBファイルをコピーするとリンク先が変わるので表示できません。リンク先を簡単に変更することは可能でしょうか? 2つめは、ハイパーリンクのフィールドを設けて行ったのですが、クリックすると画像がIEで表示されます。フォトギャラリーなど、別のソフトで開けないでしょうか?さらに、こちらもリンク先の変更が簡単に出来ません。良い方法はありますか? つたない説明で申し訳ありませんがよろしくお願いいたします。

  • Accessを開発するに当たり

    開発する人は。 VBAを熟知している人。 修正をする人は、VBAは全く知らない人。 このような状況の場合。 皆様ならどちらを選択しますか? 尚、システムとしては。 ・テーブルの更新は、複数あります。 ・途中で電源等を切られたくないとか、常識では考えられないような ことをされないように、制限をする予定です。 このシステムを開発する場合。 1.VBA・SQLをフル活用し、仕様書等で極力VBA・SQLの 知識が乏しくても修正とか、何をしているのか、分かるようにする。 2.VBAの使用は、必要最低限度に押さえ、更新・選択・削除等は、 クエリーで行う。 但し、この場合の開発についても、仕様書を作成し、知識が乏しくても何をしているのか、分かるようにする。 また、 ファイルの大きさに関しても、知りたいです。 1で作成した場合と。2で作成した場合。 データは、空の状態で差があるのか? もちろん、フォーム数。テーブルの数。インデックスを 貼るのかどうか? これらによっても、誤差があると思います。 おおよその目安で構いません。 ゴク一般的な意見としてお聞きしたいと思います。 大変に申し訳ありませんが宜しくお願いします。