• ベストアンサー
  • すぐに回答を!

Access フォームから複数テーブルの入力は?

フィールドが300ぐらいあるので項目ごとにテーブルで分けています。 1つにまとめるクエリを作成して、そのクエリを元にフォームを作成しました。 テーブルはフィールド名:品番で1対1のリレーションを組んでいます。 テーブル:商品カラー  ・フィールド:品番  ・フィールド:カラー テーブル:商品サイズ  フィールド:品番  フィールド:サイズ クエリのフィールド  フィールド名:品番 (商品カラーのフィールド:品番を指定)  フィールド名:カラー (商品カラーのフィールド:カラーを指定)  フィールド名:サイズ (商品サイズのフィールド:サイズを指定) この場合、品番をフォームから入力すると商品カラーの品番のみ入力されます。 商品カラーと商品サイズの品番を同時にファームから入力は出来ないでしょうか? 現在は10テーブルありますが1つのテーブルにまとめたほうがいのでしょうか?

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数3991
  • ありがとう数0

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

  • ベストアンサー
  • 回答No.2

私の勘違いかもしれませんが・・ サイズ対カラーで一対一のリレーションを組んでいるとのことですが、 「サイズが決まればカラーが決まる」または「カラーを決めるとサイズも決まる」と言うことでしょうか? 私の理解の範疇では、例えば 品番「○○」と言う商品(一)に対し、 サイズは「S・M・L・LL」(多)、 カラーは「青・黄・赤」(多) つまり、品番対サイズ=一対多、品番対カラー=一対多 であり、 サイズ対カラーには直接のリレーションは無いのではないでしょうか? テーブル・リレーション構造の理解と、改造を考えた方がいいかもしれません。 さてさて、リレーションシップの画面で、 連結線を右クリック→リレーションの編集  から、 「参照整合性」にチェック。 「フィールドの連鎖更新」にチェックを入れると、2テーブル同時に更新、 「レコードの連鎖削除」にチェックを入れると、2テーブルから同時に削除。 それぞれ出来ます。 ひとまずお試しくださいませ。

共感・感謝の気持ちを伝えよう!

その他の回答 (1)

  • 回答No.1

?品番で検索をしたいのですか 商品カラーと商品サイズから品番で検索するクエリーの結果表示ではだめですか?

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • Access フォームで複数テーブルの同時入力

    フィールド項目が多い為に複数のテーブルに分けて 同じフィールド名 [品番] で1対1でリレーションを組んでいます。 フォームの新規レコードで品番を入力の時に 各テーブルの品番に入力するのにはどうしたらいいでしょうか? 後々のことを考えると1つのテーブルにまとめたほうがいのでしょうか? フィールドが300ぐらいあるのでテーブルに分けたほうがわかりやすいので 現在は10テーブルに分けています。 よろしくお願いします。

  • 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つのテーブルをひとつのフォームにする場合は、クエリを別に設けた方がいいとなっています。フォームが出来上がっているので、できればクエリを設けずに行いたいのですが、よくない方法でしょうか? 手順なども踏まえて教えていただけると助かります。 よろしくお願いいたします。

  • Accessのフォームでデータを入力すると、テーブルと一致するデータをあるフィールドに代入してしまうことは可能ですか?

    本来のAccessの使い方ではないかもしれませんが・・・。 あるフォームで品番を入力すると、品番マスターなるテーブルから値を 検索して一致したフィールド(品名・数量)の値を直接フォームの フィールドに代入してしまうことは可能ですか? マクロの値の代入というものを使ってもうまくいきません。 また、クエリーを使えば、品番を入力すれば品名・数量が出るように することはできるのですが表示上だけですので、フォームに直接値 が入力されるようにしたいのです。 方法がうまく思いつきません。どうかお知恵をお貸しください!!

  • access フォームの作成

    accessの初心者で只今勉強中ですが会社で受発注を一度に管理できるシステムを作れないかと奮闘しています。 まず、現時点での構成を言います。 T_商品 フィールド〔品番(英数混ざっている)〕、品名 T_受注main フィールド〔IDオートナンバー、注番、日付、〕 T_受注sub フィールド〔IDオートナンバー、注番、品番、数量〕 Q_商品反映 T_受注subの品番とT_商品の品番で品名を参照させるクエリ があります。 ここでそれぞれの受注テーブルに入力する為のサブフォームを利用したフォームを作成しました。 サブフォームに品番を入力する際に品名を確認の為だけでいいので表示させたいのですができません。商品数が300程度あるのでコンボボックスで選ぶのは大変なので避けたいのですが、直接入力もできてt_商品にあるものであると認識できるのであれば使用してもいいと思っています(一応試みはしましたが、結局表示できませんでした)。表示させたいフィールドのコントロールソースをクエリに変えてみたのですがNAME?のエラーがでています。Dlookupでも試してみましたがうまくいきませんでした。Dlookupに関してはおそらく私が式の構成方法を理解できていないからだとも思います。 根本的に間違っているのかもしれませんが、どうやって表示させればいいのか教えていただけますでしょうか?

  • ACCESS2003のテーブル入力について

    いつもこちらでお世話になっております。よろしくお願いいたします。 マイクロソフトアクセス2003にて、No.と項目名という2つのフィールドから成り立つテーブルがあります。 そのテーブルにはあらかじめデータがはいっています。 新規にそのテーブルに追加する項目が出来たとき、新規入力用のフォームを作成しました。 その時のNo.のフィールドなのですが、自動的にもともとあるテーブルの番号に無いものを規定値として表示させておくようにするには、どのようにしたらよいでしょうか? 例) 1、2、3、5があれば、4を 1、2、3、4があれば5を よろしくおねがいします。 もうひとつ質問なのですが、納品書を入力していくデーターを作成しているのですが、納品書のテーブルがあり、リレーションで項目や会社名などを関連テーブルとしています。 あらかじめ会社名や項目名のテーブルに入力されていない新規の会社の納品書を打ち込む場合、納品書テーブル入力フォームに、入力しただけで、項目名のテーブルや会社名のテーブルに追加されていく方法はありますでしょうか?

  • Accessのフォームで

    Accessで2つほど質問いたします。 (1)テーブルにフィールドを追加したのですがフォーム上でそのフィールドが追加できません(プロパティで選択できない)、多分クエリーを経由してフォームを作成したのですが、どのクエリーだかわからなくなってしまいました、参照しているクエリーがどれなのかを調べる方法を教えてください。 (2)検索フォームを作成して入力した文字を含む検索をしたいのですが どのようにしたら良いのでしょうか、今は入力の文字列の最初と最後に「 * 」を入力して検索しています。

  • accessのクエリで入力が不可能…

    【テーブルA】 フィールド1〔数値型〕 フィールド2〔テキスト型〕 フィールド3〔テキスト型〕 フィールド4〔数値型〕 【テーブルB】 フィールド1〔数値型〕 フィールド2〔テキスト型〕 フィールド3〔数値型〕 フィールド4〔テキスト型〕 となっています。 両方のテーブルを使い、クエリを作成しました。 リレーションが、テーブルAのフィールド1と、テーブルBのフィールド3に設定してあります。 このようにして作成したクエリでデータの入力ができません。 なぜでしょうか? Access2000です。

  • アクセスの自動入力フォームに手動で入力したい

    初心者ですが、ネットで調べながらaccess2013で、納品書フォームを作りました。 納品書明細テーブルと商品マスタテーブル(商品コード、品番、単位)を納品書明細クエリで紐づけしてフォームを作成しました。商品コードを入力すると、自動的に品番と単位が入るようになっています。 ここで、商品コードがついていない商品(商品マスタに含まれず、今後登録する予定もない)も品番と単位の欄に手動で入力できるようにしたいのですが、可能でしょうか。 今手動で入力すると「フィールド'商品コード'とキーが一致しているレコードをテーブル'商品マスタ'で探すことができません」とエラーが出てしまいます。 ご教示いただけましたら幸いです。よろしくお願いいたします。

  • ACCESS でフォームからの入力とテーブルからの入力

    今、宛名発送先リストのデータベースを作っています。この中に、「敬称」(データ型は「テキスト型」)というフィールドを設けています。 ●●"様"や"御中"のように宛名ラベルに印刷できるようにするため、データ入力の際にこのフィールドにカーソルをもっていくと「様」「殿」「御中」「 」(スペース)を選べるようにしています。 <設定の概要> 具体的にはテーブルのデザインビューで「ルックアップ」タブ→「値集合ソース」の欄に「"様";"殿";"御中";"  "」と指定しています。 そして、「標準」タブ→「要求値」は「はい」を選択、「空文字列の許可」は「いいえ」を指定しています。このようにして、敬称を入れ忘れるのを防ぐ為に必ず何かを入力しないと先に進まないようにしました(スペースは特別な理由があるため敬称を一時的に入力せずに進む為です)。 <問題点> 初めは敬称の入力忘れの防止を考えていなかったので、「要求値」は「いいえ」を選択、「空文字列の許可」は「はい」を指定していました。そして、この状態で一旦フォームを作成しています。 それから、敬称の入力忘れ防止の為に「要求値」は「はい」を選択、「空文字列の許可」は「いいえ」を指定しました。 ところが、テーブルでデータ入力をする場合にはこれらの設定が反映されている(敬称を入力しなければエラーメッセージが出て次に進めないように出来た)のに対し、フォームから入力するとこれらの設定が反映されていません(敬称を入力せずに次に進めるまま)。 どのようにして、フォームにまで設定内容を反映させればよいのでしょうか???大変困っています。 ちなみに、フォームで入力した内容はデータとして問題なく残っているので、単にフィールドの設定内容が反映されていないと言うことのようです。

  • ACCESSのテーブルで「&」を使いたい

    ACCESSのテーブルで、複数のフィールドを&でつなげて、一つのフィールドを作りたいです。 例えば、 一つのテーブル内で「コード」と「品番」のフィールドがあり、 つなげた「コード品番」というフィールドを作りたいのです。 クエリでは規定値に [コード]&[品番]と入れて「コード品番」とフィールドを作ることができました。 それをテーブル内ではできないのでしょうか? よろしくお願いします。