• ベストアンサー

関数式がわかりません

A列に品名をB列に在庫数を、1行目に日付を2行目に入荷・出荷を記入した上で、3行目から品名の数量を記入していく在庫表のようなものを使用しています。 この場合B列に在庫を表したいのですが三日三晩、自分なりに式を入れてみてもうまく行きませんでした。どうかご教授願います。 具体的にはB列の在庫値を 2行目の「入(入荷のこと)」「出(出荷のこと)」を読んで 入荷なら足し算、出荷なら引き算をして返してほしいんです。

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

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.2

使用ソフトが不明ですが、Excelでしょうか?その前提で書いてみます。 作られている表がイメージできませんが下のような表でしょうか。 (想定1) 想定1は入・出は日でパターン化されているとしています。どの品名も入力し易い?     A   B  C  D  E  F  G  H  I  J  K ・・・・ 1          月初  2002/8/1  2002/8/2  2002/8/3  2002/8/4 2              入  出   入  出  入  出   入  出 3 ある商品A 94  100   5  6   10  15 4 ある商品B 60   50   1  0   10  1 B3に入れる式としては、1日、入・出で2列使えば、1ヶ月単位で一番右のセルはBMになります  =C3+SUM(IF(MOD(COLUMN(D3:BM3),2)=0,D3:BM3,0))-SUM(IF(MOD(COLUMN(D3:BM3),2)=1,D3:BM3,0)) 入力窓に上記のように入力し、登録する時、Ctrl+Shift+Enter で登録します。 これで配列数式として登録されます。Ctrl+Shift+EnterはCtrlキーとShiftキーを押しながらEnterキーを押すことです。配列数式として登録されれば、数式バー内で{算式}のように算式が{ }で囲まれます。 登録に失敗したら、そのセルでファンクションキーF2を押して編集モードにして、再度Ctrl+Shift+Enterとしてみて下さい。算式を修正した時も同様に登録します。 1日のデータが複数個ある時は、BMを最大IVまで変更できます。セル単位の加算よりは楽でしょう。 (想定2) 想定2は日と入、または日と出がペアになっているとしています。品名のことを考えると入力しにくい?     A   B  C    D     E     F・・・・ 1         月初  2002/8/1  2002/8/1  2002/8/2 2               入     出     出 3 ある商品A 89 100     5      6     10  =C3+SUM(IF($D$2:$BM$2="入",1,-1)*D3:BM3) これも配列数式です。BMはこれより右側もつかえます。 この式は想定1のパターンにも使えます。 2行目の入、出の代わりに、品名単位に2行使って、上段が入荷、下段が出荷のように使えば、楽に集計できるように思いますが・・・ 想定が違って入れば補足してください。

その他の回答 (1)

  • ADEMU
  • ベストアンサー率31% (726/2280)
回答No.1

こういうのはどうでしょうか。 A列は品名、B列は在庫数、1行目は項目名で置いといて、2行目に日付をいれるようにする。 日付に対応するように各カラムに品名の+-を入力する。在庫のカラムは合計として=SUM(C3:ZZ3)といった感じで縦に演算を組いれておけば、最終入力日付現在の在庫がみられると思うのですが(ZZはあくまでもという意味)。 ただし、C列には開始時の在庫が必要です。

関連するQ&A