• 締切済み

エクセル 2つの在庫表を照合する方法

エクセルで2つの在庫表を照合する方法について教えてください。 過去の質問もいろいろ参照したのですが、エクセル関数の理解度がSUMだけの私にとって、似たような内容ではどうも応用が利かずかなり苦戦しております。 エクセルの内容は A列 アイテムNO B列 商品名 C列 規格名 D列 当月末在庫数 E列 定価 という内容で(計500アイテム程度)毎週在庫表が届くのですが、これを前回の在庫表と照合しようとしています(現在は手作業です。。)。 アイテムNoはよく増減があります。 知りたいのは、在庫数の増減で、 1.今回新たに在庫が2以下になったもの  2.前回は在庫が2以下だったが、今回2以上になったもの 3.新たに追加されたもの なのですが、どのようにすれば簡単に照合できるのでしょうか? エクセルお詳しい方どうぞ教えてください!

みんなの回答

回答No.7

No.6 です。すみません、コピペしてたらうっかりミスしました。 No.6 の L5 ですが、正しくは「sheet1!a:a」と「sheet1!a:e」という 2 種類の記述が数式の中に含まれるべきでした。No.6 の数式のままでも正しい値が出ることのほうが多いかもしれませんが、たまたま D 列に A 列と同じ値が存在するとエラーを出してしまうケースがあるので、ダメですね。次式に差替えをお願いします。 L5 =if(countif(sheet1!a:a,g5),vlookup(g5,sheet1!a:e,4,),)

回答No.6

添付図では次式を記入してますが。これでオートフィルタを設置して L ~ M 列のうち 1 列または 2 列同時の条件により絞り込んだら、質問文の 1. ~ 3. の問いは全て、答えが出ませんか。 Sheet2 L5 =if(countif(sheet1!a:e,g5),vlookup(g5,sheet1!a:e,4,),) M5 =j5-l5 ※前回の在庫が Sheet1、今回が Sheet2

noninoni0618
質問者

お礼

回答いただき、ありがとうございます。 内容を理解実際使用し理解するまで時間がかかりそうですので、ひとまずお礼をさせてください。

  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.5

今週の表に アイテムNoが同じ前回の在庫数がいくつなのかを 表示させ ていけば 後は引き算とフィルタだけで全部分かるはずです。 アイテムNoを指定して 在庫数を数える場合 SUMIF関数を使えばいいと 思います。 > エクセル関数の理解度がSUMだけの私にとって 勉強しないで 自分がやりたいことだけやろうとする人は 上達しませんよ。 最低限 基本機能全般を勉強なさるべきかと思います。関数より前に。

noninoni0618
質問者

お礼

回答いただき、ありがとうございます。 内容を理解実際使用し理解するまで時間がかかりそうですので、ひとまずお礼をさせてください。

noname#204879
noname#204879
回答No.4

》 》 エクセル関数の理解度がSUMだけの私… 「理解度がSUMだけ」ってどういう意味ですか?

  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.3

2007以降でしたら 2行目からデータがあり 前回の在庫表をSheet1として 今回の在庫表に式を書き込むとした場合 今回の在庫表の F2に =IFERROR(IF(INDEX(Sheet1!A:D,MATCH(A2,Sheet1!A:A,0),4)=D2,"",IF(AND(INDEX(Sheet1!A:D,MATCH(A2,Sheet1!A:A,0),4)>=2,D2<=2),"新たに2以下",IF(AND(INDEX(Sheet1!A:D,MATCH(A2,Sheet1!A:A,0),4)<=2,D2>=2),"今回2以上",""))),"新規") として必要なだけ下方向にコピーしてください。 ただし、前回より今回のアイテム数が少ないときには空欄の部分に新規と表示されます。 以上また、2003でしたら =IFNA(IF(INDEX(Sheet1!A:D,MATCH(A2,Sheet1!A:A,0),4)=D2,"",IF(AND(INDEX(Sheet1!A:D,MATCH(A2,Sheet1!A:A,0),4)>=2,D2<=2),"新たに2以下",IF(AND(INDEX(Sheet1!A:D,MATCH(A2,Sheet1!A:A,0),4)<=2,D2>=2),"今回2以上",""))),"新規") にしてください。 なお、以上以下はその数値を含むものとして考えています。

noninoni0618
質問者

お礼

回答いただき、ありがとうございます。 内容を理解実際使用し理解するまで時間がかかりそうですので、ひとまずお礼をさせてください。

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

仮に、シートごとに在庫表を管理したとします。 シート名 今週の在庫表 シート名 先週の在庫表 今週の在庫表のF列に =Vlookup(A2,先週の在庫表!A:E,4,False) と入れて下までコピーします。 先月の在庫数がF列に表示されます。 オートフィルターで F列がエラー表示されている物絞り込みます。 新たに追加されたもの(先週の在庫表にアイテムNoがなかった)になります。 次に D列の在庫数が2以下でオートフィルター 更に F列で在庫数が2以上でオートフィルターで絞り込みます。 先週の在庫表では2以上で、今週は2以下のリスト 同様に D列は2以上、F列が2以下でオートフィルターで絞り込めば 良いです。

noninoni0618
質問者

お礼

回答いただき、ありがとうございます。 内容を実際使用し理解するまで時間がかかりそうですので、ひとまずお礼をさせてください。

回答No.1

Excel本来の機能を使って、照合することもできますが、 複雑な数式やマクロなどが必要と思います。一部はフィルタで対応できると思います。 1.今回新たに在庫が2以下になったもの   →条件でデータ抽出はフィルタでできます。 2.前回は在庫が2以下だったが、今回2以上になったもの  →前回の2以下のデータを抽出、今回の2以上のデータを抽出   フィルターでできます。 3.新たに追加されたもの  →データマッチングが必要、これは簡単にできないと思います。 実は下記の簡単な方法もあります。ご参考ください。 1.データ抽出  https://www.youtube.com/watch?v=ZtkEMHz-l8k 2.データマッチング https://www.youtube.com/watch?v=TitRpy797ZI

参考URL:
https://www.youtube.com/watch?v=TitRpy797ZI
noninoni0618
質問者

お礼

回答いただき、ありがとうございます。 内容を理解実際使用し理解するまで時間がかかりそうですので、ひとまずお礼をさせてください。

関連するQ&A