
非連結のフォームから、追加クエリを使ってテーブルにデータを追加したいのですが、
どうもうまくいきません。
具体的には、
履歴フォーム、というフォームで、
日付
施設名
内容
という項目があります。
追加クエリで、
[Forms]![履歴フォーム]![日付]
のようにほかの項目も入力し、
その保存先は、
履歴テーブル、で、
項目は、履歴フォームと同じです。
履歴フォームにデータがまったく入っていない状態ですと、
追加クエリを実行した際、
0件のデータを追加します。となります。
自分でテーブルに直接データを何か入力すると、
次に追加クエリを実行した際、
1件のデータを追加します。となります。
続いて追加クエリ実行の際には2件、
その次は4件追加と、
テーブルに入っているデータの件数だけ、
そのときにフォームに入力されている情報が、追加されてしまいます。
どのような原因が考えられますでしょうか?
お知恵を貸していただけたらと思います。
情報が不十分でしたらご指摘願います。
補足いたしますので。
それでは、よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
その追加クエリーを SQL ビューでみるとどうなってますか?
INSERT INTO T_TEST ( 日付, 施設名, 内容 )
SELECT [日付] AS 式1, [施設名] AS 式2, [内容] AS 式3
FROM T_TEST;
のように FROM のテーブルが、データを追加しようとしているテーブルと同じテーブルになっているんじゃないでしょうか。
INSERT INTO T_TEST1 ( 日付, 施設名, 内容 )
SELECT [日付] AS 式1, [施設名] AS 式2, [内容] AS 式3;
のように FROM なしにすれば1件づつ追加できると思います。
No.4
- 回答日時:
重複する訳ですね、了解しました。
では、履歴フォームのソーステーブルと履歴テーブルを使い、重複しないデータだけを書き込むようにすれば良いわけですね
選択クエリーを作成し、履歴フォームのソーステーブルを表示させます。
全てのフィールドをクエリフィールドに表示するし、履歴テーブルを出します。
次に、履歴フォームのソーステーブルと履歴テーブルのフィールドをそれぞれ結合し、履歴フォームのソーステーブルにあるレコードと一致するものだけを表示させるように選び、全てのフィールドを同じ様に結合してください。
左側に表示されている履歴フォームのソーステーブルから、履歴テーブルに矢印が向いている様になります。
次に、クエリーの種類を追加クエリーに変更し、追加先を履歴テーブルにします。
履歴テーブルの全フィールドを選択して、クエリフィールドに表示させ、追加フールドの部分を削除し、抽出条件に、Is Null(=nullと入れれば良いです)と入力すれば、履歴フォームのソーステーブルにあって、履歴テーブルに無い物だけが抽出されますので、御希望通りのものができると思いますよ
2度もご回答いただき本当にありがとうございました。
今回の原因は、何とか追究できました。
cafedemochaさんの回答も今後の参考にしたいとおもいます。
せっかくいろいろお知恵を貸してくださったのに
ポイント、差し上げられなくてすみません。
No.2
- 回答日時:
>テーブルに入っているデータの件数だけ、
>そのときにフォームに入力されている情報が、追加されてしまいます。
それは追加クエリーが元テーブルを参照している形になっているからではないでしょうか。
INSERT INTO 履歴テーブル
SELECT フォーム上のコントロール
>FROM 履歴テーブル
になっていませんか?
だとしたら、このFROM句は必要ありません。
クエリのデザインビューでいうと、
上の表示欄にある「履歴テーブル」を削除すれば良いはずです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- Access(アクセス) access フォーム 大分類、小分類 1 2022/08/11 18:03
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Excel(エクセル) エクセルのファームにプルダウン設置できますか? 2 2022/05/19 23:38
- Visual Basic(VBA) 【困っています2】VBA 追加処理の記述を教えてください。 2 2022/08/26 11:42
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- Chrome(クローム) 入力フォームの履歴を消したい 2 2023/06/29 13:02
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Access(アクセス) Access DAOのExecuteメソッドのオプション(RecordsetOptionEnum)に 1 2022/09/19 07:34
- JavaScript javascriptでテーブルに追加した項目のid追加してローカルストレージを操作したい 5 2023/01/01 15:52
このQ&Aを見た人はこんなQ&Aも見ています
-
アクセスのエラー「クエリには出力フィールドが1つ以上必要です。」
その他(Microsoft Office)
-
アクセスのfilter、複数条件の記述方法を教えてください。
Access(アクセス)
-
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
-
4
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
5
Accessクエリーで両方のテーブルの全てのデータを表示することは可能ですか?
Access(アクセス)
-
6
実行時エラー 3020の対策
Access(アクセス)
-
7
テキストボックスにクエリ結果を表示させたい
その他(データベース)
-
8
ACCESSのフォームからデータの追加ができない
その他(データベース)
-
9
Accessの追加クエリで既存のテーブルに上書き追加をしたい
その他(データベース)
-
10
ACCESS クエリで重複データを最新の1件だけ表示
Access(アクセス)
-
11
Accessクエリ 複数フィールドを対象に空白の場合は全件表示したい
Access(アクセス)
-
12
Accessのスプレッドシートエクスポートで、シートが追加されてしまう
Access(アクセス)
-
13
アクセスのテキストボックスの初期値を空白に
Access(アクセス)
-
14
ACCESSでテーブルにあるチェックボックスを一括でYesにする方法を教えてください
Access(アクセス)
-
15
Acccessで2つのテーブルから1つのフォームをつくりたい
Access(アクセス)
-
16
Access コンボボックスの値をクリアしたい。
PowerPoint(パワーポイント)
-
17
選択したチェックボックスのみチェックを入れたいのですが
その他(データベース)
-
18
ACCESSで非連結のテキストボックスに値を出力するには?
Access(アクセス)
-
19
ACCESSのフォームで次のレコードに移動しない方法を教えてください
その他(データベース)
-
20
Accessでデータシートに同じデータがいくつもでてしまいます。
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
クエリ上でフィールド名が2つ...
-
FileMaker12Proで集計結果を使...
-
ACCESSのリストボックスで複数...
-
FileMakerの検索について
-
アクセス2000の初歩的な質...
-
ACCESS クエリ コンボボックス
-
AccessでExcelとリンクしてテー...
-
チェックボックスをレポートで...
-
ACCESSとSQLserverの入門書
-
ルックアップウィザードで設定...
-
アクセス・テーブルの改行につ...
-
アクセスでの、フォームとテー...
-
FileMakerPro7以降で検索を使っ...
-
Access2000について教えてくだ...
-
access2010 2つのテーブルを結...
-
ワードでエクセルのような機能
-
アクセスで2つの表を1つにし...
-
アクセスでレポートに表示
-
45年前のレコードプレーヤを10...
-
Accessのクロス集計
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アクセス・テーブルの改行につ...
-
Access フォーム上でのテキス...
-
アクセスでの、フォームとテー...
-
アクセス: フォーム上で計算...
-
クエリ上でフィールド名が2つ...
-
Accessで更新履歴情報を保存(...
-
アクセスクエリで英数字のみ半...
-
ACCESSのリストボックスで複数...
-
アクセスに自動入力を入れたい
-
アクセスの追加クエリで教えて...
-
Accessでチェックボックスから...
-
Access フォームで複数テーブル...
-
Access 別テーブルにある値を抽...
-
INT関数のバグ?
-
テーブルとクエリの相関図は表...
-
アクセスのテーブルでコードを...
-
アクセス:SQLでフィールド...
-
ACCESSの時刻の引き算
-
Access2013 クエリ内別フィール...
-
Access ルックアップが反映され...
おすすめ情報