• ベストアンサー

入力した合計数値を振り分けたい

関数とかマクロなど理解していない初心者でエクセル2003を使用しいます。 例えば 1Aのセルに1~10個(単価50円)と入力済 2Aのセルに11~20個(単価40円)と入力済 3Aのセルに21~30個(単価30円)と入力済 1B~3Bのセルに個数欄未入力 1C~3Cのセルに金額自動計算式入力済 4Bのセルに合計個数欄未入力 4Cのセルに合計金額自動計算式入力済 とした場合、例えば4Bの合計個数に29個と入力すると、自動的に1Bに10個、2Bに10個、3Bに9個と個数が振り分けられる様にしたいのですが、できるのでしょうか?

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

  • ベストアンサー
  • f272
  • ベストアンサー率46% (8467/18126)
回答No.2

#1の人と同じことですけれど B1=MIN(10,B4) B2=MAX(MIN(10,B4-10),0) B3=MAX(MIN(10,B4-20),0) 30個を超える個数を入れた場合には対応していません。

shige_June
質問者

お礼

有難うございます。 Sinogi様の方法で出来ましたが、f272様の方法もあるんですね、それぞれ大変勉強になりました。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

>1Aのセル 初心者丸出しの書き方。A1セルと表現する。エクセルの本でも読んで見習うこと。 それに質問の説明が判りにくい。 お金の金種計算を思い起こさせる課題。 ーー 色々やり方はあるだろうが、初心者には、下記の方法を思いつくのは無理だろうが、読者のために、スマートと思うので挙げる。 例データ A列   B列   C列   D列   E列   F列 - - 10 10 10 10 29 - 10 10 9 17 - 10 7 0 5 - 5 0 0 38 - 10 10 10 8 A列は合計個数。 B列は理由があって空白列にする。その理由は判るのは質問者には相当先だろう。スマートな解法にするためだ。 第1行には、C列から右の列に順次、先取りしていく、区分けの個数を各列に並べる。 10ばかりのように統一でなくても、第1列の数字を変えれば式はそのままで行けるはず。 C2の式は =IF($A2-SUM($B2:B2)>C$1,C$1,$A2-SUM($B2:B2)) この$付き、$なしの按配が、初心者にはわかりにくかろう。 後はC2の式をF2まで横方向に式複写。 C2:F2の式をC5:F5まで式複写。

shige_June
質問者

お礼

有難うございます。 確かに超初心者の私には・・・ ご指摘の通りA1セルと表現することが分っただけでも・・・ 今後は質問の説明の仕方も含めて勉強します。

  • Sinogi
  • ベストアンサー率27% (72/260)
回答No.1

もっと簡易な式が提案される気がしますが、例えばこんな式ではいかが? B1:=IF(B$4-10<0,B$4,10) B2:=IF(B1=10,IF(B$4-20<0,B$4-10,10),0) B3:=IF(B2=10,IF(B$4-30<0,B$4-20,10),0) 各セルの式が異なるので注意してください。 ※一般的にはセル番地を"A1"のように表現します。お約束は従ったほうが何かと便利(?)です

shige_June
質問者

お礼

早速ご回答いただき有難うございました。 参考にさせて頂きます。 ※お約束の方も勉強します。

関連するQ&A