• 締切済み

アクセス初心者^^; フォームで追加入力したら、クエリは?

アクセスの初心者です。 1 追加のデータをフォームから入力したら、テーブルは自動的に追加されていましたが、それに関連した既存のクエリには自動的に追加されないようですが?反映させたい場合にはどうすればよいでしょうか。 2 また、テーブルとクエリとフォームの関係を簡潔に教えていただけたらと思います。

  • octet
  • お礼率3% (7/216)

みんなの回答

  • DexMachina
  • ベストアンサー率73% (1287/1744)
回答No.2

> 反映させたい場合にはどうすればよいでしょうか。 マクロやVBAで、そのクエリに対して再クエリ(requery)を実行させてやれば、変更が反映されます。 (マクロなら、「アクション」に「オブジェクトの選択」(→マクロのデザイン画面の左下部分で、更新したいオブジェクトを指定)、「再クエリ」(→コントロール名は不要)を指定します) クエリを元にしたフォームの表示を更新したい場合は、「オブジェクトの選択」でそのフォームを指定して下さい。

noname#27115
noname#27115
回答No.1

テーブル=データの入れ物 クエリ(選択)=特定の条件でデータをテーブルから抽出したもの *クエリには選択クエリ、更新クエリ・・等、数種類あります。 フォーム=テーブルやクエリのデータを見やすいように表やシートにしたもの なので、テーブルのデータが変わってクエリのデータが変わらないことはありません。表示が更新されていないだけです。なので、そのクエリを一度閉じて再度表示すると更新されたデータが表示されます。 >既存のクエリには自動的に追加されないようですが

関連するQ&A

  • Accessのクエリでデータの入力ができません

    Access2000を使っている超初心者です。 参考書に基づいて、2つのテーブルをリレーションシップして、選択クエリを作成したのですが、このクエリから既存データの修正をしようとすると入力できません。また、最終行に*マークの新規データ入力欄がなく、データの追加もできません。 フォームの方もこのデータソースをテーブルのひとつににすると*マーク行が出て入力できるのですが、このクエリにすると*マーク行が出てこないです。 参考書のとおりやってるつもりなのですが、何が原因でしょうか? よろしくお願いします。

  • アクセスの追加クエリで教えてください。

    非連結のフォームから、追加クエリを使ってテーブルにデータを追加したいのですが、 どうもうまくいきません。 具体的には、 履歴フォーム、というフォームで、 日付 施設名 内容 という項目があります。 追加クエリで、 [Forms]![履歴フォーム]![日付] のようにほかの項目も入力し、 その保存先は、 履歴テーブル、で、 項目は、履歴フォームと同じです。 履歴フォームにデータがまったく入っていない状態ですと、 追加クエリを実行した際、 0件のデータを追加します。となります。 自分でテーブルに直接データを何か入力すると、 次に追加クエリを実行した際、 1件のデータを追加します。となります。 続いて追加クエリ実行の際には2件、 その次は4件追加と、 テーブルに入っているデータの件数だけ、 そのときにフォームに入力されている情報が、追加されてしまいます。 どのような原因が考えられますでしょうか? お知恵を貸していただけたらと思います。 情報が不十分でしたらご指摘願います。 補足いたしますので。 それでは、よろしくお願いいたします。

  • Access2016 フォームに入力したデータ

    こんにちは。よろしくお願いします。 Access2016で本をみながらどうにかフォームまで作成しました。 フォームにデータを入力し あとでテーブル確認すると内容が一部反映していないのは どこが悪いのでしょうか? クエリで確認すると反映されています。 フォームの作り方が悪いのか、リレーが悪いのか 例えば、フォーム内で 担当者コード 100と入力したら 自動でフォーム内に 山田と入っています。 でもテーブルで確認すると 100だけあって 山田はありません。 クエリで確認すると 100も山田も反映されています。 素人なので変な質問になっているかもしれません。 上記内容の改善策を教えて下さる方いらっしゃいましたら よろしくお願い致します。

  • アクセスのフォームで抽出したデータに追加をしたい。

    アクセスのフォームで抽出したデータに追加をしたい。 はじめまして。アクセスの初心者ですが、どうぞお願いいたします。 添付のシートのようなアクセスのフォーム画面があります。これの前に、別のフォームで ORDER NO. 品番、数量、、、など、入力し終わっているので、その入力したデータがテーブルに入っています。 ここのフォームでは、ORDER NOを入力し、さきほど入力してテーブルに入っている品番数量などのデータを呼び出すようになっています。(私が作ったシステムではないのですが、抽出するためのクエリと結びついているようです) ここの画面において、たとえば、もう一つデータを加えたいとき、(この添付の画面で言えば、4番目のデータを付け加えたいとき)どうすればいいのでしょうか。 たとえば、品番、数量などだけ入力したところで、テーブルにデータは反映されません。 1,2,3番までのデータには、さきほど申しましたように、ORDER NO.も含めて前の画面で入力済み(テーブルに入っています)から、大丈夫ですが、それ以降のデータを付け加えるとなると、ここの画面でもひとつひとつORDER NOも入力しないと、テーブルに追加されなくなります。 添付したシートの右のほうに(ORDER NO)とあると思うのですが、1,2,3までのデータには、この欄にORDER NOが表示されます。だから、更新可能です。4番以降、追加したかったら、ここにひとつひとつORDER NOを入力しなければテーブルに反映されません。つまりお尋ねは、4番、5番のデータを入力したときに、この(ORDER NO)のところに自動的にORDER NOが入力され、そしてテーブルにデータが入るようになるにはどうしたらよいのでしょうか。 というのも、以前はそうなっていたのですが、私が一度ここのフォームをいじってしまったためこのような不具合が起こってしまったのです。しかし、私がさわった(一度消してしまった)のは、この(ORDER NO)のところだけですので、ここさえ直せば、今のトラブルは解消できるものと思います。 どなたか、説明が下手で申し訳ありませんが、助けてください。

  • Accessのフォームとテーブルについて教えてください。

    Access2003を使用しています。 既存のフォームAにフィールド3個を増やしました。 フォームAはテーブル(1)と連動していました。 追加したフィールドはテーブル(6)のものです。 ところがフォーム上で追加フィールドに入力が出来なくなりました。3フィールドのうち、ひとつはコンボボックスです。表示はされますが確定ができません。 フォームAのSQLステートメントではテーブル(1)・(6)以外にテーブル(2)・(3)・(4)・(5)が結合されています。 フォームAからするとテーブル(2)・(3)・(4)・(5)のデータはIDの名称を見るための参照用です。 テーブル(6)は、追加フィールドのコンボボックスが参照用で、他の2追加フィールドは、フォームから入力してテーブル(6)に反映させたいものです。 テーブル(6)の画面では入力できます。 フォーム上からは入力できません。 設定が何か欠けているからでしょうか? 他の質問では2つのテーブルをひとつのフォームにする場合は、クエリを別に設けた方がいいとなっています。フォームが出来上がっているので、できればクエリを設けずに行いたいのですが、よくない方法でしょうか? 手順なども踏まえて教えていただけると助かります。 よろしくお願いいたします。

  • Access2003 フォームの入力ができない

    Accessまったくの初心者です。的外れな質問をしているかもしれませんが、よろしくお願いいたします。 FOM出版の「よくわかるAccess2003基礎」を使って勉強している最中なのですが、途中でつまづいてしまいました。 お客様Q&Aにも問い合わせをしている所なのですが、2営業日を過ぎないと回答が得られないとの事で、時間がもったいないので、こちらでも質問させてください。 テーブルを元にクエリを作成しフォームを作ったのですが、フォームにデータを入力しようとすると、PCより「ポンポン」と警告音がなり入力が全く出来ない状態です。 試しに、既存ファイルのクエリに入力をしてみたのですが同じ状況で入力できません。 テーブルには、数値の入力は出来ました。 フォームにデータを入力するには何か特別な操作が必要なのでしょうか? よろしくお願いいたします。

  • Access2007のフォームとクエリについて

    Access2007、OSはwindows7での開発です。 フォームのレコードソースに自分で作ったクエリを張り付けているのですが、 コードの中でクエリを変更し、その変更した内容がフォームに反映のされ方がおかしくて困っています。 前の画面で年月を入力し、ボタンをクリックすることで次の画面へ移行し、前の画面の年月でクエリを書き換えています。クエリは書き変わっていますし、クエリを書き換えた後にフォームをリクエリしています。しかし、フォームに反映されているデータは直前に入力した年月ではなく、その1つ前の年月のデータが出てきます。 流れとしましては、 年月入力画面で年月入力⇒作成ボタン押下で時間テーブルを見て、データが無ければ新しく作る。あればそのデータを表示というながれです。 説明下手なので理解しにくいかもございませんが、ご協力よろしくお願いします。

  • accessのクエリ

    こんにちわ。 いまaccess2000を使っています。 あるフォームのコントロールソースとして ある選択クエリを指定しました。 そのクエリは元になるトランザクションテーブルと それに関連するマスタテーブルから構成されています。 そこでこのフォームの詳細セクションでデータを入力すると, トランザクションテーブルにそのまま登録されるように なっていますが,なぜか関連するマスタにまでデータが 登録されてしまいます。 なおそのときはマスタの名称項目のみに登録され, コード項目には何も登録されません。 トランのみに反映しマスタには反映しないようにしたいのですが, どうすれば良いでしょうか? 教えてください。お願いします。

  • Accessのフォーム

    Access2003を使用しています。 テーブルまたはクエリを元に作成したフォームにはテーブル・クエリに入力されているデータが表示されますよね? それらのデータをフォームから変更出来ないようにする方法はありますか? データ自体を非表示(入力用フォーム)にするのではなく、既存のデータは表示されるけど変更は出来ないという状態にしたいです。 ちなみに新規入力は行えるようにしておきたいです。 よろしくお願いします。

  • アクセスでフォームでレコード編集、追加不可能

    エクセル2010でデータをテーブル作成をしました。アクセス2010でインポートして、インポートしたテーブルでフォームを作成。作成したフォーム使用して、データ変更できない。初心者用のテキストでは、フォーム・クエリから、レコード追加、既存レコードの編集が可能とありました。初心者なので、教科書通りでないと、何処が、どの様になり、フォームで追加、編集が不可能か分かりませんので教えて下さい。 ※OKWAVEより補足:「ひかりTVのサービスやISPぷらら」についての質問です。

専門家に質問してみよう