お世話になっております。Access初心者です。
すみませんが至急で作成したいDatabaseのため、どうか以下ご教示お願い致します。
①質問内容
複数のテーブルをクエリ「Q_入力フォーム」で結合し、
そのクエリから作成した入力用のフォームがあるのですが全く動きません。
リレーションシップの結合の種類や結び方が間違っているのかなと思いますが、
素人なのでどこが違っているのか分かりません・・
図を添付しているので、正しい設定を教えて頂けますでしょうか。
●作りたいフォーム
お客様IDだけを入力すると、紐づけされた複数のテーブルのお客様情報が自動で表示され、
そこに手入力でデータを入れて保存していきたい。
フォームで保存したレコードは「T_入力用」のレコードに追加されていくようにしたい。
●テーブルについて
リレーションシップを結んでいる箇所は「データ型」「フィールドサイズ」「書式」を統一しています。
データ型は全て「短いテキスト」にしています。
【T_入力用】
→フォームで入力したレコードの保存をするところです。
【T_入力用_入力者名】
→フォームでドロップボックスに紐づける選択肢をレコードに入れています。
【T_顧客情報_日本支社】
→「T_入力用」テーブルIDと紐づけしたいマスタテーブルです。
【T_顧客情報_海外本社】
→「T_入力用」テーブルIDと紐づけしたいマスタテーブルです。
ここで紐づけに使っているIDのデータは参照照合性不可・重複あり空白ありのIDデータです。
【T_顧客情報_海外担当者】
→「T_入力用」テーブルIDと紐づけしたいマスタテーブルです。
ここで紐づけに使っているIDのデータは参照照合性不可・重複あり空白ありのIDデータです。
●クエリについて
以下テーブルを組み合わせて作っています。
フォームを作成するために作りました。
・T_入力用
・T_顧客情報_日本支社
・T_顧客情報_海外本社
・T_顧客情報_海外担当者
②質問内容
出来上がったフォームに新たにテキストボックスを追加し、
そこに別テーブルにあるフィールドを関数かなにかで表示させたいのですが
うまくいかなかったので関数式をご教示いただけますでしょうか。
すみませんが、何卒宜しくお願い致します。
No.7ベストアンサー
- 回答日時:
一応原因は分かりました。
クエリは問題無いと思います。
原因はT_入力用_案件ステータス、T_入力用_入力担当者名ですね。
この2つのテーブルはT_入力用とリレーション関係にありますが、本フォーム上で更新されるのはT_入力用のレコードのみで、T_入力用_案件ステータス、T_入力用_入力担当者名上のデータについては更新されません。
そのため、更新しようとするとT_入力用とT_入力用_案件ステータス、T_入力用_入力担当者名のデータの間で矛盾が生じますので、更新エラーとなっています。
とりあえず、更新出来るようにしたいのであれば、Q_入力フォームのプロパティよりレコードセットを”ダイナセット (矛盾を許す)”に変更すれば変更可能です。
No.4
- 回答日時:
No.1~3です。
理解力がなく申し訳なです。なんとなく分かりました。
ただ、原因解決するためには情報がいろいろ足りないですね。
最低でも
・Q_入力フォームのSQL
・フォームが動かないとは具体的の症状は?
・各テーブルに登録されている情報
は欲しいところです。
一番簡単なのはAccessファイルを展開して頂くことなのですが・・・。
No.3
- 回答日時:
No.1~2です。
フォーム上にあるテキストボックスがあり、そのテキストボックスは"Q_入力フォーム"クエリのSELECTした値が出力されている。
貴方は、テキストボックスが出力されている値を手動で変更した後に、登録ボタンを押すとテキストボックスの値がT _入力用テーブルに登録される機能を作りたいということでしょうか?
クエリのSELECT結果を出力しているテキストボックスの値は変更出来ません。
No.2
- 回答日時:
No.1です。
こちらこそ言葉足らずで申し訳ないです。
サブフォームに限らず、直接フォームのレコードソースに設定しても更新は出来ません。
もし、アクセスで更新機能を実現したいのであれば、
今設置しているテキストボックスはユーザー参照用として残し、別に更新用のテキストボックスを項目ごとに設置。
「レコードの保存」ボタンのマクロ内で各テーブルに対してUPDATE文を実行してあげる必要があります。
No.1
- 回答日時:
フォーム上にサブフォームを設置してクエリ表示している、そしてフォーム上に表示しているクエリのデータを更新しようとするが更新出来ないと理解しましたが、
クエリの場合はフォーム上から更新は出来ないと思いますよ。フォーム上から更新できるのは単一のテーブルをサブフォームで表示したときのみです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- その他(データベース) accessについて 2 2022/05/31 16:58
- SQL Server ACCESSで表が作りたく、そのためのSQL文や設定方法を教えてください。 1 2022/08/15 12:28
- 経営情報システム accessでの請求管理について 12 2022/06/11 16:20
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- Access(アクセス) Accessの参照フィールドの列がずれてしまいます 1 2023/07/19 15:00
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Access(アクセス) Dlookupにエラーがでてしまう 1 2022/10/31 14:35
- Access(アクセス) Access IF文でテーブルに存在しない場合の処理について 2 2022/10/10 18:09
このQ&Aを見た人はこんなQ&Aも見ています
-
とっておきの「夜食」教えて下さい
真夜中に小腹がすいたときにこっそり作るメニュー、こっそり家を抜け出して食べに行くお店… 人には言えない、けど自慢したい、そんなあなたの「とっておきの夜食」を教えて下さい。
-
秘密基地、どこに作った?
小さい頃、1度は誰もが作ったであろう秘密基地。 大人の今だからこそ言える、あなたの秘密基地の場所を教えてください!
-
「これはヤバかったな」という遅刻エピソード
寝坊だったり、不測の事態だったり、いずれにしても遅刻の思い出はいつ思い出しても冷や汗をかいてしまいますよね。
-
牛、豚、鶏、どれか一つ食べられなくなるとしたら?
牛肉、豚肉、鶏肉のうち、どれか一種類をこの先一生食べられなくなるとしたらどれを我慢しますか?
-
ギリギリ行けるお一人様のライン
おひとり様需要が増えているというニュースも耳にしますが、 あなたが「ギリギリ一人でも行ける!」という場所や行為を教えてください
-
Accessのクエリでデータの入力ができません
Access(アクセス)
-
ACCESSのフォームからデータの追加ができない
その他(データベース)
-
Access レコードを追加できません。テーブル’○○’の結合キーがレコードセットにありません。
Access(アクセス)
-
-
4
「フォームを作成できませんでした」
Access(アクセス)
-
5
Accessフォームでデータ入力できない(初心者)
その他(Microsoft Office)
-
6
ACCESS フォームにデータ入力できません
その他(データベース)
-
7
フォームで入力しても反映されない
Access(アクセス)
-
8
アクセス レコードセットを更新できません
その他(データベース)
-
9
Accessレコードの追加や変更が出来ません。
その他(データベース)
-
10
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
11
Accessで別テーブルの値をフォームに表示したい
その他(データベース)
-
12
Acccessで2つのテーブルから1つのフォームをつくりたい
Access(アクセス)
-
13
アクセスで新しいレコードの追加ができません
Access(アクセス)
-
14
Access 同じデータをたくさんのレコード(同一列)に一度に入力するには
Access(アクセス)
-
15
Access チェックボックスを利用した絞込検索のクエリ記述
その他(Microsoft Office)
-
16
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
17
Accessでコードを入れると名前がでるようにしたい
Access(アクセス)
-
18
Access フォームのテキストボックスに半角英字のみで入力する設定は
Access(アクセス)
-
19
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
20
ACCESS フォームからサブフォームのデータを更新・入力したい
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでデータを更新したらそ...
-
入力した値をコンボボックスに...
-
前のレコードの値を自動で入れたい
-
インデックスまたは主キーにはn...
-
AccessVBAの値によっ...
-
Accessで、最後(更新)にエラ...
-
「バリアント型でない変数に Nu...
-
access別のテーブルを参照して...
-
Accessフォームが入力できません。
-
Accessでフォームに自動入力し...
-
Accessのフォームでデータ入力...
-
テキスト型のフィールドでハイ...
-
Accessのフォーム入力をしても...
-
ACCESS フォームで入力データ...
-
エクセルで、抽出したデータだ...
-
Access サブフォームでの選択行...
-
ACCESS 複数のフォームから同一...
-
ExcelのComboboxでマウスのスク...
-
PDFファイル/抽出許可され...
-
AccessでIDを入力したら他の項...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
前のレコードの値を自動で入れたい
-
access別のテーブルを参照して...
-
Accessフォームが入力できません。
-
インデックスまたは主キーにはn...
-
Accessでデータを更新したらそ...
-
AccessVBAの値によっ...
-
入力した値をコンボボックスに...
-
ACCESSでフォームのチェックボ...
-
ACCESS フォームで入力データ...
-
アクセスでコードを入れると名...
-
「バリアント型でない変数に Nu...
-
テキスト型のフィールドでハイ...
-
アクセスで自動でレコードを増やす
-
Accessでフォームに自動入力し...
-
アクセスのフォームの必須項目...
-
Accessで、最後(更新)にエラ...
-
Accessフォーム上の値を条件と...
-
access ダブリ登録を防止したい
-
ACCESS2003で、テーブルの更新...
-
Accessで時間外管理の作成について
おすすめ情報
ご回答いただき大変ありがとうございます。
説明が足りず申し訳ありません。
複数のテーブルを結合したクエリ「Q_入力フォーム」を使って、1つのフォームを作りました。
サブフォームではなく、フォームウィザードからQ_入力フォームをまるっと使って
フォームを作成した感じになります。(画像を上げましたm(__)m)
大変恐れ入りますが、ご教示いただけますと幸いです。
フォーム画像:https://d.kuku.lu/3b7ee704fa
構成画像:https://d.kuku.lu/077b313775
nekoronda様
ご回答いただき大変ありがとうございます。
たびたび申し訳ありません…
今回作成したフォームなのですが、
登録者がIDを入力すると、
T_顧客情報にある同じIDの会社名などを自動で抽出参照してくれて、
その下にある同フォーム内の「T _入力用」の中の案件進捗状況フィールドに新規で手動入力していき、登録ボタンを押すとその内容が「T _入力用」に保存されていくようなものを作成したいのですが、、
フォームウィザードで複数テーブルを結合したクエリを基に作成したのですが、リレーションシップがおかしいからなのか、なぜか全てが参照用となっていて手動入力できない状況です。
大変恐れいりますが、フォームの作り方をご指摘頂けませんでしょうか。フォームウィザードを使用しない方がいいのでしょうか。
nekoronda様
大変分かりやすくご回答いただき大変ありがとうございます。何度もすみません。
フォーム上にあるテキストボックスには
"Q_入力フォーム"クエリでSELECTした値が以下のように出力されます。
①T_入力用の”ID”
②T_顧客情報_日本支社の”会社名”
③T_顧客情報_海外本社の”担当者”
④T_顧客情報_海外担当者の”海外担当社”
⑤T_入力用の”案件進捗情報”※データ入力用フィールド
私はこの⑤フィールドのみに、値を手動で変更した後に登録ボタンを押すと
テキストボックスの値がT _入力用テーブルに登録される機能を作りたいです。
①~④はクエリのSELECT結果を更新せず参照するのみです。
クエリSELECT値を①②⑤のみに直すと理想通りになるのですが
なぜかクエリSELECT値に③④を足してフォームを作成すると、フォームが動かなくなります。
とんでもないです。こちらこそ、ご丁寧にご対応くださり大変恐縮です。
私が必要な情報漏れており、大変すみません。。
ご対応くださり本当にありがとうございます。
AccessのDatabaseを共有しようと試行錯誤したのですが、
私が勉強不足で上げ方が分かりません。
大変恐縮なのですが、展開方法をご教示いただけないでしょうか。
大変ありがとうございます。簡単にできました・・
失礼致しました。本当にありがとうございます。
https://d.kuku.lu/7f302dc6bd
クエリでも入力できませんでしたので、テーブルのデータの中身か、リレーションシップがおかしくなってしまっているのかなと感じております‥
このデータベースは構成test用で、実際は別のテーブルデータで業務しますが
T_顧客情報_海外本社の”ID”と、T_顧客情報_海外担当者の”海外ID”が
空白があったり重複があったりするデータのテーブルを取り込むことになり、
この2つのテーブルに主キーは設定できません。
IDで照合して、同じIDのものがもしあればフォームに参照表示したい・・といった感じです。
この2つのテーブルがクエリに追加されるとおかしくなります。
五月雨式にすみません。理想のフォームについて、言葉足らずだったので
画像を作成しました。
https://d.kuku.lu/8e8f761003
お手数をおかけして申し訳ありません。
お忙しいところ、ご対応くださり本当にありがとうございます…。
お手数おかけしてすみません。
nekoronda様
ご対応いただき、またこんな短時間でご指摘くださったことを
心から感謝しております…
何度も、私が知識不足で大変申し訳ありません
この画像のように、クエリのプロパティを探してもレコードセットを”ダイナセット (矛盾を許す)”
が見当たりません。
本当に大変恐縮ですがご教示頂けますでしょうか。
申し訳ありません。
ご対応いただき大変ありがとうございます。
また何度も何度も本当にすみません。。
色々いじってみたのですが、フォームのプロパティのレコードセットを”ダイナセット (矛盾を許す)”に変更すると
今まで反映されていた、T_顧客情報_日本支社・T_顧客情報_海外本社・T_顧客情報_海外担当者が反映されなくなってしまいました。
会社名などを確認しながらフォームで入力するためにはどうしたらよいでしょうか‥
お手数をお掛けして大変恐縮なのですが、ご教示いただくことは可能でしょうか。