- 締切済み
Accessで作ったクエリーを使ってさらに更新する方法
Access97のクエリーを使ってデータの抽出や更新を行なっています。Accessでは作成したクエリーを使ってさらにクエリーを作れると思うのですが、うまくいきません。 内容は以下のとおりです。 (1)ある条件で「抽出クエリー1」を作る (2)別の「テーブル」と「抽出クエリー1」をキーマッチングさせ、マッチしたものだけ「テーブル」を更新させたい。 やりたいことは単純なのですが、これを行なうと 「更新可能なクエリーでなくてはいけません」とメッセージが出てしまい、更新できません。作ったクエリーがいけないのかと思い、一度エクセルにエクスポートし、再度アクセスにテーブルとしてインポートするとうまくいきました。ですが、こんな面倒な方法はやってられません。 作ったクエリーを再び別のクエリーで使う為にはどうしたらよいのでしょうか? ちなみに、選択クエリーや追加クエリーではこのようなことが起こったことはありません。 アクセスに詳しい方、どうかよろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- TMINET
- ベストアンサー率32% (45/140)
再レスです。 グループ化したクエリーは更新クエリーには使えません。 ACCESSの仕様です。 あしからず。
- TMINET
- ベストアンサー率32% (45/140)
確認すべきは以下のようなところですかねえ。 「抽出クエリー1」は単純な選択クエリーなのか? 更新クエリーのフィールドには「テーブル」のフィールド以外無いはず? (ここで更に条件指定しているなら別ですが) 更新したいフィールドにはどんな値を入れようとしているか?(データ型など) 更新可能なクエリーかどうかはデータシートビューで見てみると分かります。 最下行に*の付いた行があるはずですから。 再度チェックをしてみては?
お礼
更新クエリーのフィールドには「テーブル」のフィールドしかありません。どんな値を入れたいかというとキーがマッチした時の「抽出クエリー1」のフィールドの項目です。クエリーの値なのでデータ型などはありませんが、素になっているデータは数値型、テキスト型様々です。でも、セットしたい項目とセットする場所は同じ型で揃えています。更新可能なクエリーかどうかをチェックしたところ「※」はなかった為、更新不可能なクエリーとわかりました。この選択クエリーはどんなものかといいますと集計を使ってある項目でグループ化し、他の項目は合計やカウント、最大値などをセットさせています。(その為、更新不可能なのだと思います。)ですが、この更新不可能なクエリーに対して更新したいのではないので、この点はあまり関係ないような気がするのですが。
お礼
そうですか。ACCESSの仕様ということで残念ですがあきらめます。今までどおりエクスポートしてから再インポートしてテーブルを作りなおすという方法しかないのですね。どうもありがとうございました。