在庫管理表を作成しています。
Q_在庫管理表 (クエリ)
出入庫ID(主キー)、日付、商品ID、商品名、商品番号、数
T_商品(テーブル)
商品ID(主キー)、商品名、商品番号
上記のフィールドがあり、現在【商品ID】を入力して【商品名】、【商品番号】が
自動セットされるようになっています。
これを【商品番号】を入力しても【商品ID】【商品名】がセットされるように
したいのですが、どうしたらいいでしょうか。
「コードでも名称でも入力できるコンボボックス」
https://hatenachips.blog.fc2.com/blog-entry-237.html
を拝見したのですが、フォームとコンボボックスでの操作だったので
当てはめることができませんでした。
バーコードスキャナアプリで【商品番号】を読み取り、EXCElかcsv形式で一括で登録したいと考えている途中です。
どうかよろしくお願いいたします。
Q_在庫管理表 のSQLを提示してもらえますか。
EXCEL と Access の連携はどのように考えているのでしょうか。
データをエクセルに格納するなら、エクセルで直接読み取ればいいと思いますが。
早速のお返事ありがとうございます。
Q_在庫管理表
現実にはこのようになっています。
見ようみまね作成しているので無駄な部分やおかしな所があるかもしれませんが、、。
F_在庫管理表フォームも作成してあり、通常はそちらから手作業で入力していたのですが、バーコードスキャナアプリのデータで入力できないかと思考錯誤している段階で、
複数の【品番】をアプリで読み取りcsv形式でパソコンに保存
↓
Q_在庫管理表と同じ形のEXCELのテーブルに落とし込み
↓
Q_在庫管理表に追加でコピペ
これでできないだろうかと思っての質問でした。
ごめんなさいどのようにすればいいのかわからないです。
よろしくお願いいたします。
ご希望の処理の流れは下記になると思います。
バーコードスキャナアプリで「商品番号」を読み込む。CSVファイルとして保存される。
↓
エクセルファイルにテーブルとして読み込む。
↓
これをAccessのテーブルに取り込む。
「Q_在庫管理表」に取り込むという考え方ではなく「T_在庫管理表」にデータを取り込むという考え方にすべきでしょう。
「Q_在庫管理表」にコピペしたとしても、データが最終的に追加されるのは「T_在庫管理表」ですので。
「Q_在庫管理表」には「T_商品」などのマスターテーブルのフィールドも表示されていますが、これらのフィールドは更新してはだめなので。
「T_在庫管理表」には「商品番号」や「商品名」などのフィールドはないはずですので、外部キーである「商品ID」を入力する必要があります。
いったん、エクセルに落とし込むなら、エクセルの方で「商品番号」を「商品ID」に変換するのが簡単そうですが、それではだめでしょうか。
あるいは、下記のようにしてもいいでしょう。
エクセルのテーブルをAccessにインポートする。
更新クエリでインポートしたテーブルの「商品番号」を「商品ID」に変換する。
このテーブルを追加クエリで「T_在庫管理表」に追加する。
ご教示ありがとうございます。関係性をよく理解しておらず、おっしゃる通り商品リストを更新してしまったりでうまくいっていませんでした。
その場合は、Accessの商品リストをエクセルにエクスポートしてから利用するということであっていますか?
日々大量の商品をAccessのT_商品リストに登録していく事になるのでちょっと不安があるのですが、、、。
上の回答の追記の方法でどうでしょう。
更新クエリは、インポートしたテーブルとT_商品リストを「商品番号」で結合したクエリにするといいでしょう。
ありがとうございます!!
その形で進めようと思います。
まだ、更新クエリ、追加クエリをささっと作成できる技量がないので、勉強しながらやってみようと思います。
追加のアドバイスもありがとうございます。
また、行き詰まったらお邪魔するかもしれませんが頑張ってみます。