• ベストアンサー

アクセスのフォームで簡単入力の仕方

いつもお世話になっております。当方アクセス初心者です。フォームにテキストボックスを2個配置しました。1個にコードを打ち込むと別のテキストボックスにそれに該当する項目を表示させたいのですがどうすればいいのでしょうか?入力したデータを保存するテーブルが1つ、コードと項目を保持するテーブルが1つ、それぞれ用意しています。よろしくご教示願います。

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

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

1.「コード一覧」という名のテーブルに[コード]と[商品]があるとします 2.フォームを新規で作成し、テキストボックスを2個つくります。ひとつのテキスト名は"コード"とするとします。もうひとつのテキスト名は"商品"とするとします。 3."商品"のプロパティのコントロールソースに =DLookUp("商品","コード一覧","コード=" & [コード])と入力します "コード一覧"テーブルのフォーム[コード]と同じ"コード"の"商品"フィールドの値を返します。 これはDLOOKUP関数で、 "コード"と[コード]が同じ名でわかりづらいですが つまり・・ =DLookUp("A","B","C=" & [D]) とすると Bというテーブルのフォームの中のDと同じコード(C)のレコードのAのフィールドを入れる という意味です

cycle-hanako
質問者

お礼

お礼が遅れました。ごめんなさい。早速試すことにします。ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (2)

回答No.3

#2です。 追伸です。 同じ条件でテーブルの"コード一覧"の"コード"のデータ型が"数値型"である場合でした。 "コード"のデータ型が"テキスト型"の場合は =DLookUp("商品","コード一覧","コード='" & [コード] & "'") となります。 シングルクォーテーション(')でくくり、最後に&でしめる必要があります。

cycle-hanako
質問者

お礼

追伸まで頂いて、恐縮しております。また判らないことなど教えてください。ありがとうございました。

すると、全ての回答が全文表示されます。
noname#27115
noname#27115
回答No.1

フォームのレコードソースをテーブルでなくてその2つのテーブルを元にしたクエリにします。 そうすれば、たとえば会員IDを入力したら会員名が自動的に表示されるとかになります。

cycle-hanako
質問者

お礼

お礼が遅れてしまって申し訳無いです。参考になりました。ありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A