• ベストアンサー

accessからは参照のみにしたい

excelしか使った事の無い人たちにaccessのパラメータSQLを使って複数のexcel表からデータを抽出して見せたいのですが表示された表をいじくられると大元のデータが壊れてしまいます。access経由時のみ更新禁止、参照のみ可能の状態に出来ないでしょうか? excelしか使った事の無い人は保存操作をしなければデータは更新されないという感覚がありますからガードしないと危ないのです。 excel表はリンク参照します。

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

  • ベストアンサー
  • skikichi
  • ベストアンサー率65% (45/69)
回答No.2

SQLを使用しないといけないのですか? そのへんが引っかかりますが。。。 それは置いておいて・・・ リンクテーブルはクエリーで参照できますよね。 それとも、フォームで参照するのですか? フォームであればフィールド毎のロックもかけられます。 クエリーであれば、デザインフォームのテーブルが表示されているエリアで右クリックしてプロパティーを表示するとレコードセットを設定できる項目がありますので、そこをスナップショットに選択すればよいです。 これによって、クエリーでリンクテーブルを参照した時データを変更することはできなくなります。 (リードオンリーです)

akiraa
質問者

お礼

SQLは意識していなくてaccessのGUIで簡単に出来る範囲の機能(私の場合パラメータークエリどまりです..)で行いたいのです。 ともあれ教えて頂いた方法で参照オンリーに出来ました。 有難う御座います。 あとは他の人がexcel表をいじっているあいだはクエリーがエラーになりますが、これはしかたないですね。

その他の回答 (2)

  • palmmy
  • ベストアンサー率38% (841/2170)
回答No.3

テーブルに取り込んで、ユーザーにはテーブルを 見せるとか。(変更されても、excelには反映しない) 原始的ですが。 あとフォームで見せれば変更禁止に出来ますよ。

  • skikichi
  • ベストアンサー率65% (45/69)
回答No.1

うっ? こういうことを言っています? Excelファイルへのリンクテーブルに対してパラメータークエリーを作成し、プロパティーのレコードセットをスナップショットに設定して更新不可で参照する。

akiraa
質問者

補足

「プロパティーのレコードセットをスナップショットに設定」というところがきっとやりたいところを説明してくれていると思うのですが、自分には意味不明でもう少し補足して戴けると嬉しいです。 レコードセットというものが何かのプロパティとしてあってそれをスナップショットというものに合わせればいいという事はおぼろげに判るのですが...

関連するQ&A

  • Accessのパラメータクエリについて

    Accessのパラメータクエリがうまく動かなくて困ってます。 実はODBC経由でリンクテーブルを作っておりまして、そこからパラメータクエリで抽出を試みたのですが、パラメータは聞いてきますが抽出できません。 選択クエリ状態で直接抽出条件を入れてやれば何の問題もなく通常のテーブルと同様に抽出できるのですが、パラメータクエリにする、または同じ事ですが他のフォームのコントロールを参照させる状態ですと、エラーも出ずにノンデータとなります。 これって何故なんでしょうか?対処方法はありますか? ちなみにリンク元のテーブルはオラクルですがデータ型とかが関係あるのでしょうか?

  • ACCESSのADPでのフォームコントロール参照

    ACCESSのADPでのフォームコントロール参照式はForms![フォーム名]![コントロール名]でフォームのデータコントロールのSQL文の抽出条件に設定したのですがエラーがでます。教えてください。

  • Access起動中にExcelで参照

    AccessのVBAで、インターネットを検索してデータを収集中に、Excelでそのデータベースを参照するようなことってできるのですか? 別の言い方をすると、Accessであるデータベースのデータを絶えず更新しながら、別のソフトでそのデータベースのデータを利用することってできるのでしょうか? よろしくお願いします。

  • ExcelのVlookupでアクセスを参照したい

    質問があります。 掲題の通りですが、ExcelのVlookupでACCESSのクエリを参照してレコードを取得したいです。 今まで、ACCESSのクエリをExcelにエクスポートして、それをExcelでVlookupで持ってきていました。それを、Accessから直接Vlookupでもってきたいです。 ADO+VBAでやるだろうとは理解していますが、どうも難しくわからないです・・・。コードの記述を含めてやり方を教授して頂けると幸いです。 画像をアップロードしたのでよろしくお願いいたします。 画像のA1-D5がExcelで、下のテーブルはACCESSのものです。 ACCESSのテーブルをExcelのシートにコピペしてVlookupすれば良いのですが、後学のため、それと応用を利かすためにAccessのクエリを直接参照してデータを取得する方法を知りたいです。 よろしくお願いいたします。 それと、もし、その他オフィスの項目で聞くべきでしたら教えて頂ければ幸いです。 よろしくお願いいたします。

  • Access ADO パラメータークエリー

    Access ADOでフォームのコントロールを参照するパラメータークエリーを開こうとすると、どうしても「SQLステートメントが正しくありません・・・」のエラーが発生してしまいます。 もちろん、クエリー単体では正常に動作しますが、クエリーのパラメーターに参照するコントロールを登録してもADOでは開けません。 現在はパラメータークエリーの抽出結果を一時テーブルに書き込んで、これをADOで開くという非効率極まりない方法で凌いでいますが、どうすれば良いのでしょうか。

  • 【Excel2007、外部データの取り込み、Microsoft Query】

    Excel2007を用いて、Microsoft Query経由でMy SQLに接続してデータを取得して表示しています。その際に、SQL文を発行して条件を絞ったうえでSELECTしています。 このSQL文なのですが、都度都度ウィザードを立ち上げて入力するのではなくて、セル参照のような形で自動的に、セルをいじると自動的にSQL文が変更されてデータも更新されるようにすることは可能ですか。 (もしくは、だーっと並んでいるデータから =SQL(???) というような関数でデータを抽出できる関数を提供しているアドインなどをご存知でしたら教えてください。)

  • アクセスVbaとストアドプロシジャーについて

     ストアドプロシジャーにパラメーターを与えるまたは結果をパラメータに戻すこ方法についてご教授下さい。  アクセスとSQLサーバです。 画面のテキストボックスをパラメータとしてストアドプロシジャーから必要データを表示することは出来たのですが パラメータを与えて特定のレコードを更新する方法がわかりません

  • Accessで…

    いつもお世話になっています。 さて、Accessで3つのエクセルのデータ(異なった名簿表)から、同じ名前(一致している人)を抽出したいのですが…。できるのでしょうか?クエリで2つのデータの不一致はよく利用しているのですが…。これはどうなんでしょう。他にも何か良い方法があれば何でも良いのでご教授願います。

  • アクセスVBAの参照設定

    アクセスVBAからエクセルを使うためにVBAのツールメニュでExcel11.0 Object Libraryを参照設定すると、なぜか「参照不可」になってしまいます。 別のパソコンでは問題ありません。 原因は何でしょうか?どうすれば解決できるのでしょうか? よろしくお願いします。

  • アクセスのデータをエクセルにコピー

    アクセスで抽出したデータをエクセルにコピーする方法はないでしょうか? できればVBAを使わない方法でお願いします。  あと、社内LANのアクセスファイルなので、更新・削除はしない方法でお願いします。 1、アクセスの抽出したデータをエクセルにコピーする方法。 2、更新・削除などはしないやりかた。 1、2のどちらも満たしている方法をご教授ください。なるべく、詳しく書いてくださったほうが幸いです。