エクセル、出庫フラグと入庫フラグが混在する表で数量計算

解決済みの質問

エクセル、出庫フラグと入庫フラグが混在する表で数量計算

20090501,1,a001,2
20090502,2,a001,1
20090503,2,a001,1
20090504,1,a002,5
20090505,1,a004,2
20090506,2,a003,1
20090507,2,a002,3
20090508,1,a003,2
20090509,2,a004,1
上記の様な表があるとします。
左から日付、出入庫フラグ、品番、数量、とします。
フラグは、"1"の場合は入庫、"2"の場合は出庫とします。

条件、a001の場合、フラグ1の合計から、フラグ2の合計を差し引く。
a001の在庫数はゼロとなります。

つまり同じ品番である場合、各フラグの値を相殺させて在庫高を
出したいのです。在庫数を出力する場所は問いません。
これを関数でどうにかなりませんでしょうか?お教えください。

投稿日時 - 2009-05-12 16:32:17

連想キーワード:

QNo.4952888

すぐに回答ほしいです

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

仮に日付がA列、出入庫フラグがB列、品番C列、数量D列、1行目から300行目までのデータとします。

=SUMPRODUCT((B1:B300=1)*(C1:C300="a001")*D1:D300)-SUMPRODUCT((B1:B300=2)*(C1:C300="a001")*D1:D300)

で求められます。

投稿日時 - 2009-05-12 16:44:13

お礼

簡潔な回答助かります。ありがとう御座いました。

投稿日時 - 2009-05-13 15:41:02

ANo.1

0人が「このQ&Aが役に立った」と投票しています

[  前へ  |  次へ ]

ベストアンサー以外の回答(3件中 1~3件目)

ANo.4

    A    B   C   D  E  F  G H  I
1  DATE   FLAG PNUM QNTY   PNUM 1 2 INV
2  20090501   1 a001   2   a001 2 2  0
3  20090502   2 a001   1   a002 5 3  2
4  20090503   2 a001   1   a003 2 1  1
5  20090504   1 a002   5   a004 2 1  1
6  20090505   1 a004   2
7  20090506   2 a003   1
8  20090507   2 a002   3
9  20090508   1 a003   2
10 20090509   2 a004   1
11

G2: =SUMPRODUCT(($C$2:$C$100=$F2)*($B$2:$B$100=G$1),$D$2:$D$100)
I2: =G2-H2

投稿日時 - 2009-05-12 18:35:18

お礼

わざわざ例を作っていただいてありがとう御座いました。参考に致します。

投稿日時 - 2009-05-13 15:46:03

ANo.3

EXCELのバージョンはいくつでしょう?
配列関数を多用すると非常に重くなるので、
EXCEL2007ならSUMIFSを使った方が良いと思います。

投稿日時 - 2009-05-12 18:17:36

お礼

バージョンは2007です。行数が一万を超えるものもあるので、sumifもあわせて勉強しておきます。ありがとう御座いました。

投稿日時 - 2009-05-13 15:43:25

ANo.2

一例です。
表範囲をA1:D10、F1以下に品番を事前設定、G1に次の関数を設定し、下方向にコピーで如何でしょうか。
=SUMPRODUCT(($B$1:$B$100=1)*($C$1:$C$100=F1)*($D$1:$D$100))-SUMPRODUCT(($B$1:$B$100=2)*($C$1:$C$100=F1)*($D$1:$D$100))

投稿日時 - 2009-05-12 16:44:13

お礼

ありがとう御座います。参考になりました

投稿日時 - 2009-05-13 15:45:03

あわせてチェックしたい
  • コマンドプロンプトの"*"の使いかたを教えてください。 ...
  • 入庫と出庫 ...
  • valueの非表示の方法 ...
PR

OKWaveのオススメ

教えて弁護士さん!

お金の悩みQ&A特集はこちら