Accessのテーブル設計とオートロックアップについての質問

このQ&Aのポイント
  • Accessにて親番号を入力した際、子番号・子品名・子数量・子単価が異なる場合に対応するテーブル設計方法を教えてください。
  • 現在ExcelでXlookupを使って部品の履歴データ入力を行っていますが、Accessにてクエリを使用して同様の機能を実現したいです。
  • Accessのテーブル設計とオートロックアップについてアドバイスをいただきたいです。
回答を見る
  • ベストアンサー

Accessのテーブル設計 オートルックアップ

Accessのテーブル設計。及びオートルックアップについて質問です。 現在Excelで下記の様な形でXlookupを使い部品の履歴データ入力を行っております。 親番1→親名1→子番1→子名1→親数1→子数2→子単価→合計→注番1 &&・・ 親番1→親名1→子番2→子名2→親数1→子数4→子単価→合計→注番1 &&・・ 親番1→親名1→子番3→子名3→親数1→子数5→子単価→合計→注番1 &&・・ Accessにてクエリを使用して入力、親番号を入力して子番号を参照できるようなテーブル設計は可能でしょうか? 1つの親図番を入力した際、子番号・子品名・子数量・子単価が異なる場合になります。 色々とやってみたのですが上手い事いかず、説明下手で申し訳ありませんがご教授頂きたくお願い申し上げます。

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

  • ベストアンサー
  • chayamati
  • ベストアンサー率41% (254/607)
回答No.2

回答№1の添付画像がを差し替えです

その他の回答 (2)

  • chayamati
  • ベストアンサー率41% (254/607)
回答No.3

★こんばんは、  M_部品の品名CDにM_品名をルックアップ定義の説明のため、  3つの画像を1面に重ねました  ここから先はマウスと数字入力で進めます  添付の丸付き数字の順に進めます  ①先ずM_部品をデザインビューで開きます  ②品名CD  ③ルックアップ  ④表示コントロール右端  ⑤コンボボックス  ⑥値集合ソースの右端の…じるし   クエリービルダが起動してクエリーのデザイン画面   表示順等を定義  ⑦連結列=1(M_品名の1番目の品名CD)  ⑧列数=2(M_品名の品名CDと品名)  ⑨リスト幅=0(;区切りで最初の品名CDは0として表示しない) -------------------------------------------------- 他のテーブルもルックアップ定義する ・M_業者←T_注文 ・T_注文←T_注文明細 ・T_注文明細→M_品名 ・M_品名←M_部品 -------------------------------------------- その他 ・各テーブルの主キーのデータ型はオートナンバー型 ・マスターテーブルの品名等のインデックスプロパティーを重複なし ・注文№等はテキスト型の定型入力とする ・オートナンバー型の主キーはAccessが管理してくれるのでフォーム上に配置する必要なし

080-xx69-xxxx
質問者

お礼

この度もご回答頂き誠にありがとうございました。 回答頂いた内容をヒントに何とか理想的な形に仕上げる事が出来、またご質問させて頂く事もあるかと存じますがよろしくお願い致します。

  • chayamati
  • ベストアンサー率41% (254/607)
回答No.1

>Accessのテーブル設計 オートルックアップ ★添付のようなテーブル構成になります  ・keyマークの付いた項目のデータ型はオートナンバー型です  ・リレーションシップは全て1:∞の参照整合性で   関連付けられています   これをテーブルデザインでルックアップ定義して   コンボボックス化して名称を表示します  ・ルックアップはクエリービルダーで。   クエリー内で参照表示順を指定できます >Accessにてクエリを使用して入力、  親番号を入力して子番号を参照できるような  テーブル設計は可能でしょうか? ★項目名の頭の親、子は必要ありません >1つの親図番を入力した際、子番号・子品名・子数量・子単価が  異なる場合になります ★単価はM_親商品、M_子部品では標準単価で、T_注文明細の単価とは異なります。 ★ルックアップ定義について、お伝えしたいのですが、  少し日付が掛かります  暫く閉めないで下さい。

関連するQ&A

  • アクセス テーブル ルックアップ について

    アクセスです。[売り上げ] というテーブルで、フィールド [年月日] [果物] [個数] があって、[果物] の入力時に マスタテーブル [M果物] を ルックアップ 、 コンボボックス で選択するようにしています。すでにデータ入力してあります。ところが、[M果物] には、リンゴ、ミカン、メロン・・・・・などたくさんあるので、探して選択するのに不便になってきました。そこで、[果物]入力時に、よく売れる個数順に果物を並べ替えて、ルックアップ、コンボボックスに表示して入力を便利にしたいのですが、どのようにしたらよいのでしょうか?宜しくお願い致します。

  • アクセステーブルでのルックアップ条件別表示について

     いつもお世話になっております。ACCESS2016を使用しています。  お聞きしたいのは、条件によってテーブルのルックアップフィールドに表示されるデータを変えたいのですが、その方法が分かりません。  フォームでのやり方は分かりますが、テーブルで表示させたいと思っています。  例えば、下記のようなテーブルがあるとします。    「T_マスター」テーブルの地区がAのときは「T_ルックアップA」を、「T_マスター」テーブルの地区がBのときは「T_ルックアップB」を担当者に表示させて、各「T_ルックアップ」テーブルにある3番目の担当者を入力したいと考えています。  テーブルでこの表示をさせたいのですが、やり方が分かりません。  どうぞご教示くださいますようお願いいたします。

  • アクセスクエリ

    アクセスクエリの質問です。親番 子番 のテーブルがあります。親番1が5行あり子番は0から4まで入っています。続いて親番2が10行あり子番は0と11から19まで入っています。これをクエリで親番1は子番が0のみを抽出し、親番2番は子番が0以外を抽出したい時。どういうクエリになりますか。 iifで指定したらいいような気がするのですが、関数がわかりません。実は親番は1000番程あり、子番もランダムの数字をもっています。全て子番0は必ずもっており、後はランダムです。特定の親番だけ0以外の子番を抽出し、基本は子番0を抽出するといった事がしたいです。詳しい方いらっしゃいましたら、ご教示頂けると幸いです。

  • ACCESSのテーブル設計とクエリ

    ACCESS初心者です。 ACCESS2010 OSはWindows7です。 パソコンはアクセスとエクセルマクロの入門書を読み終えたレベルです。 只今、注文実績管理表を作成するために、必要な情報を複数のテーブルに 分解してコード化していますが、関連付けできない為にデーターの参照ができません。 対応方法があれば教えていただくようお願いします。 どうしても実現したいので、テーブルの設計が間違えているかもしれませんが写真を掲載します。 ■現在の状況と質問 A)商品だけで300アイテムあります。リストを見ながら商品名と金額を入力するのは、膨大な時間を奪われるので、発注書に書かれている。4ケタの商品番号と注文数量の入力のみに したい。その後に入力した4ケタの数字でデーターを集計し、分析業務につなげていきたい B)【C】と【D】は注文書のイメージです。ひとり最大50個の商品を一枚の注文書で 発注します(ひとりの注文が1か月に1~3回)。一回の注文で最大、50品目のデーターを 格納することは、アクセスで可能なのでしょうか? C)発注実績の抽出ですが、以下内容で実行したいです。どうすれば可能でしょうか?   テーブルの設計と関連付け、リレーションの設定がわかりません。   i)個人別の1か月注文実績。商品名、注文合計数、合計金額を商品別に表示   ii)個人別の注文合計金額(月、年間)の集計。   iii)商品Aの注文実績(月、年間) D)リレーションの状態。 【A】の(2)と【C】の(2)  【B】の(2)と【D】の(3)、(5)、(7)、(9)、(11)、(13)、(15)、(17)、(19)・・・ 【C】の(1)と【D】の(2)のみ参照整合性がとれています。 E)商品テーブルのドリルボタンを押して、下の階層を見ようとすると、画像のような メッセージがでます。これはなんなのでしょうか? ■現在の状況を列挙します。 【A】顧客テーブル (1)顧客ID(オートナンバー・・・長整数型) 主キー(2)発注コード(テキスト型)         ※発注コードは『英数字』のためテキスト型。リンク先も『テキスト型』 (3)氏名(テキスト型) 【B】商品テーブル (1)商品ID(オートナンバー・・・長整数型) 主キー(2)注文番号(数値型・・・倍精度浮動小数点型) (3)品名(テキスト型) (4)金額(通貨型) 【C】注文テーブル 主キー(1)注文ID(オートナンバー・・・長整数型)    (2)日付 (3)発注コード(テキスト型)        ※発注コードは『英数字』のためテキスト型。リンク元も『テキスト型』 【D】注文明細テーブル(注文番号は全て4ケタの数字です。重複Noはありません) 主キー(1)注文明細ID(オートナンバー型・・・長整数型) (2)注文ID(長整数型) (3)注文番号1(数値型・・・長整数型) (4)数量(注文番号1) (5)注文番号2 (6)数量(注文番号2) (7)注文番号3 (8)数量(注文番号3) (9)注文番号4 (10)数量(注文番号4) ・ ・ ・※注文番号50まで続く・・・

  • ACCESS2000 テーブルの更新方法

    テーブルAがデータベース(商品番号、単価)が入力されています。 テーブルBが入庫されたデータ(オーダー番号、商品番号、個数)が入力されてます。 クエリで 入庫されオーダー番号を入力すると、テーブルBから入荷した商品番号、個数、テーブルAから単価が表示されるようになっています。 商品番号でリンクさせている状態です。 そこで単価に変更があった場合、この時点でテーブルAの単価を上書き訂正したいのですが、入力できませんでした。 何かよい方法はありますか?アクセスはじめたばかりでよくわかりませんが、よろしくお願いします。

  • アクセスのテーブル入力について

    テーブルの表示でID番号を入力で部品名が出てくる方法はありますか? T-部品名 1.部品名ID 2.部品名 T-修理内容 1.日付 2.部品名 3.修理内容 ここのテーブルで部品ID番号を入力すると部品名が表示、入力できる方法はありますか?テーブルの内容を変更しても良いです。 T-修理内容の部品名はルックアップ列で選択するようにしています。ルックアップ列で検索は出来ないですよね?する方法はあるのでしょうか? 部品名が多くなって選択が大変です。良い方法はありますか? 超初心者なので難しい事はわかりません。 簡単に出来る方法があったら、よろしくお願い致します。

  • Access 2重のルックアップフィールドで、ID番号ではなく、名称を

    Access 2重のルックアップフィールドで、ID番号ではなく、名称を表示したい。 Access 2010を最近昨日から始めました。データベースの正規化がうまくないかもしれませんが、以下の現象で困っています。 ・メーカーテーブル:メーカーID/メーカー名 ・部品テーブル:部品ID/メーカー名:メーカーテーブルよりルックアップフィールド(メーカーテーブルのIDとリレーション) ・在庫テーブル:在庫ID/部品名:部品テーブルよりルックアップフィールド(部品テーブルの部品IDとリレーション) 上記のテーブル構成だとします。 部品テーブルでは、ルックアップフィールドで、”メーカー名”が表示されています。これは問題ありません。 次に在庫テーブルで、部品をルックアップテーブルで選ぼうとすると、メーカー名が文字列で表示されてほしいところが、メーカーIDの数値がでてしまいます。部品テーブルのメーカー名が”数値型”で管理されていることが原因だと思いますが、ここをメーカーIDではなく、メーカー名を出すことはできますでしょうか?

  • アクセス2003 ルックアップについて

    下記のテーブルで次のようなことをしています。 <商品分類> ・商品ID(オートナンバー)・・・入力順に自動で入ってます。 ・コードA(数値型)・・・商品の種別を約10種類の番号で振り分けています。 ・コードB(数値型)・・・メーカーごとに分けられるように番号をつけています ・コードC(数値型)・・・コードA・Bが共通なもの同士を個別番号で分けています。 ・商品名(テキスト型)・・・商品名を入力しています。 ・商品コード(テキスト型)・・・仕入先からの伝票上のコードを入力しています。 ・備考(テキスト型)・・・商品名・商品コードだけでは分かりにくい時の補足を記入しています。 <仕入記録> ・仕入記録ID(オートナンバー)・・・入力順に自動で入ります。 ・仕入年月日(日付型)・・・仕入年月日を入れています。 ・仕入先(テキスト型)・・・仕入先を入力しています。 ・商品名(ルックアップ/テキスト型)・・・<商品分類>の商品名が表示されるようにしています。 ・数量(数値型)・・・商品の数量を入れています。 ・単価(通貨型)・・・商品の単価を入れています。  現在<商品分類>に約1000商品のデータを入れてあります。 ルックアップの表示はコードA・B・Cの昇順で表示し、選択後は商品名が表示されるようにしてあります。 (コードA~C・商品名・コードA~Cの7列で最初の3列の列幅を0cmにしてます) (1)この状態で<商品分類>の商品名やコードA~Cを書き換えた場合、仕入記録の商品名にはすべて反映されるのでしょうか? 特にコードCを変えた場合はどうなるんでしょうか? 例:コードA  コードB  コードC  商品名     10     5     1   大根              ↓    コードA  コードB  コードC  商品名      10     5     1  ニンジン    コードA  コードB  コードC  商品名      10     5     2    大根 上記のようにした場合、既に入力された<仕入記録>のデータの商品名大根はどうなるんでしょうか?  (2) <仕入記録>でクエリを作成し、商品ごとの仕入金額を出そうとしているんですが、(1)のようなデータの変更をした場合どのように反映されるんでしょうか? 書き方がややこしいと思いますが宜しくお願いします。

  • アクセスのフォーム上でのルックアップについて

    お世話になります。 素人が初心者向け参考書を片手に、顧客管理のデーターベースを作ってます。 下記は作ったテーブルの簡単な図です。 【商品区分】→【商品マスタ】→【会社別単価】←【顧客マスタ】    【仕入先】↑ :テーブルのフィールド: 【商品区分】(区分ID)(区分名) 【仕入先】(仕入ID)(仕入先名) 【商品マスタ】(商品ID)(商品名)(区分ID)(仕入ID) 【顧客マスタ】(顧客ID)(会社名)(会社名の頭文字)(住所)(電話&FAX)(取引開始年月日) 【会社別単価】(単価ID)(顧客ID)(見積日時)(商品ID)(数量)(単価)(備考) 主キーはIDでオートナンバーにし、各々のIDでリレーションをしています。 また、【商品マスタ】と【会社別単価】のIDをルックアップ設定しています。 で、【会社別単価】以外は入力が終了して、【会社別単価】をフォームを作り入力しようとしています。 ※問題となっていること※ フォーム上から入力していますが、如何せん会社数が400社近く、商品数も10の区分があり、 各々に小物も合わせ30商品(合計10×30=300商品)あり、ちょっと入力が 面倒なことになっています。(フォームはウィザードを使用して作りました) ※やりたいこと※ 【会社別単価】のフォームで、会社名を(頭文字)で抽出して(あ、い、う…で入力しています)、 コンボボックスを2つ使用して、「あ」を選ぶと頭文字「あ」の会社が出てくるようにしたいです。 同じように商品名の方も、商品区分で選んで、それに対応する商品群を表示したいです。 同じような質問があり、参考にしてやってみてますが、さっぱり分かりませんw また、何か補足が必要であれば、補足しますので、すみませんが力を貸してください。

  • アクセス2003 テーブルの設計について

    工事管理システムを作成しています。 月ごとの担当者ごとの今月売上金額や今月粗利金額を手入力で テーブルに保存(格納)しておきたいのですが、テーブルの設計が分からず困っています。。 ■今月販売テーブル [フィールド名] 年月 担当者名 今月売上金額 今月粗利金額 年月には[2013/10][2013/11]・・・と年月を入力して準備しています。 複数の担当者がいるために担当者名を入力して準備すると [2013/10 田中][2013/10 山田]・・・・とひと月×担当者の人数が必要になります。 また、担当者が増えた場合に手間が発生してしまいます。 元々の考え方が間違っていると思いますので、アドバイスをいただけたらありがたいです。 「今月販売」フォームで入力したい年月と担当者名を選択して入力出来ないかと考えています。

専門家に質問してみよう