• ベストアンサー

access2003初心者です。データの入力について

access2003初心者です。 受注明細を作成しています。 商品ごとに商品の発送方法が決まっています。 テーブルまたはフォームで商品情報を入力をするときに、 最初のフィールドまたはコントロールで、リストから商品を選択して、 次のフィールドまたはコントロールで、リストから発送方法を選択します。 そこで発送方法をa~hの8種類から選択するのですが 商品Aの発送方法はa,bの2種類、 商品Bだとb,c,dの3種類の中のいづれかの発送となるので それ以外はリストになくてよいのです。 つまり、先に入力した値によって、 次に入力できる値に制限を加えたいのですが、 どうすればよいのかわかりません。 この一連の動作の名前すらわからないほどの初心者です。 よろしくお願いします。

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

  • ベストアンサー
noname#140971
noname#140971
回答No.1

無茶答えにくい質問です。 商品マスター: [ID]__[品名]__[発送方法_区分] ___1___A__________________________0 ___2___B__________________________1 ___3___C__________________________2 発送方法: [ID]__[区分]__[形態] ___1________0____0_a ___2________0____0_b ___3________1____1_a ___4________1____1_b ___5________1____1_c ___6________2____2_a ___7________2____2_b まず、[商品マスター]のテーブル構造がこのようであるかどうかです。 上述の場合、[品名]=’A’の商品に対応する[発送方法].[形態]は’0_a’と’0_b’であることは明白。 ですから、[品名]が確定すれば[発送方法].[形態]を絞り込んで表示できます。 受注原簿: [ID]__[受注日]________[受注番号] ___1___2008/03/01__2008030001 ___2___2008/03/02__2008030002 受注明細; [受注原簿_ID]___[行番号]___[商品マスター_ID]___[発送方法_ID] ________________1_____________1_______________________1____________________1 ________________1_____________2_______________________2____________________3 ________________2_____________1_______________________1____________________1 ________________2_____________2_______________________2____________________3 次に、上記マスターテーブルと[受注原簿][受注明細]の関係がどうなっているかです。 普通は、受注は受注単位で[受注番号]を付与して管理すると思います。 そして、その[受注原簿]に対応した明細を管理する[受注明細]を用意するでしょう。 この場合、[受注原簿]がメインフォームで[受注明細]がサブフォームになるでしょう。 [受注明細]では、[行番号]を付与して並びを管理するでしょう。 ここまでは、手書きの[受注原簿]と[受注明細]との関係に等しいです。 さて、このような設計であれば、[受注明細].[発送方法_ID]の入力はチトややこしいです。 まあ、この程度のテーブル設計を提示されないとマッチした回答は得られないと思いますよ。 そういうことで、少々、テーブル設計を補足されたがいいです。 ※入力要領よりテーブル設計の段階じゃないのかなーという気がします。

harukaruka
質問者

お礼

丁寧な回答ありがとうございます アクセスを初めて1週間ほどの超初心者ですので、 回答の内容を1度読んだだけではまだわかりません。 マニュアルを見ながら参考にさせていただきます。 ありがとうございました。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

アクセスではSQLが使えて、検索は普通のことです。 商品のデータの一部に発送方法コードを持つ。 商品テーブル 商品  発送コード 商品A  2 商品B  2 商品C  1 商品D  3 ーー 発送テーブル 発送コード 発送 宅配便 1 貨物便 1 宅配便 2 航空便 2 クール便 2 巡回便 3 試走便 3 訪問持参 3 会社留め置き 4 週間1度   4 ーー 商品Bが選ばれると、発送コードは2だから 発送テーブルの発送コード2のものを検索して 2の行をコンボのアイテム(明細)に表示する。 その場合はコンボのデータソースはSQL文になる。 商品が選択されると商品マスタのその商品の発送コードを検索し、 発送選択の条件として、発送選択のコンボ表示に引き渡し、端聡テーブルの選択に使う。 ーー 業務で良く出てくるシーンだと思うが、初心者には、この方法は、そうたやすくないだろう。SQLのことも勉強がいる。しかし用例は本やWEBにあるはずだ。 別の初心者にわかりやすい方法があればそちらの案暗に譲る。 ーー 発送宛先地域で発送方法が違うのでは。商品で発送方法を固定してよいと言うのは、質問は甘いのでは。 人間が判断するべきなのでは。

harukaruka
質問者

お礼

丁寧な回答ありがとうございます 何ゆえアクセスを初めて1週間ほどの超初心者です。 質問の内容もまだまだで申し訳ありません。 わからない用語ばかりですが マニュアルを見ながら参考にさせていただきます。 がんばります。 ありがとうございました。

関連するQ&A

専門家に質問してみよう