[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『条件別の数の求め方』(のBI太)
在庫管理で規定以上に在庫している分を処分しようと思います。 在庫は新品と中古があります。 新品+中古が規定(MAX)を超えた分について「新品のみ処分」します。 ただし新品は最低1個在庫します。(中古の在庫上限は無し) 要新品処分数を求める関数式を教えてください。
ここを計算で出したい ↓ A B C D E F 1 品名 合計数 新品数 中古数 MAX 要新品処分数 2 あ 6 2 4 7 0 3 い 10 6 4 9 1 4 う 8 4 4 3 3 5 え 5 5 0 3 2 6 お 4 4 0 4 0 7 か 12 12 0 2 10 8 き 6 1 5 5 0 9 く 19 4 15 15 3
よろしくお願いします。
< 使用 Excel:Excel2003、使用 OS:WindowsXP >
F2に =IF(B2<=E2,0,IF(AND(B2>E2,C2=C2-ABS(B2-E2-C2)),C2-ABS(B2-E2-C2)-1,C2-ABS(B2-E2-C2)))
でしょうか?
(jun53) 2014/08/21(木) 17:24
F2 =MIN(C2-1,MAX(E2,SUM(C2:D2))-E2)
で、いいの? (GobGob) 2014/08/21(木) 19:18
B列に合計あったねw。
F2 =MIN(MAX(0,C2-1),MAX(E2,B2)-E2) (GobGob) 2014/08/21(木) 19:22
お二方の式を検討した結果、GobGobさんのを使わせていただきました。
※jun53さんの場合、次の様な事例で(−)が発生しました A B C D E F 1 品名 合計数 新品数 中古数 MAX 要新品処分数 2 さ 3 0 3 1 -2 ← 0が正解 3 し 27 4 23 9 -10 ← 3が正解
私も"IF"でどうにかしようとして望む数字が全然出て来なくて頭の中がこんがらがって降参しました。 (まして"AND"なんてどう使ったら良いのかも分からなかったです・・・)
GobGobさんの式もまだ「なんとなく」しか理解できていませんが今後に役立てさせていただきます。 (式を作る以前に答えを導き出す条件を考えるのが、まずうまくできないです)
jun53さん、GobGobさんどうもありがとうございました。 (のBI太) 2014/08/22(金) 14:06
>「なんとなく」しか理解できていませんが
そんなに難しいことおまへん。
1: 新品+中古 と MAX を比較して大きいほうを返し、MAX値を引き算。 ・・・ MAX値よりOVERする数値が返る(ってことは必ず 0以上の数値になりますな)
2: 0と新品 -1 を比較して大きいほうを返す。 (もし新品が0ならマイナスになるんで保険)
3: 1と2を比較して小さいほうを返す。
ってことっす。 (GobGob) 2014/08/22(金) 16:53
IFでやってみた。
=IF(C2-IF(C2=0,0,1)<IF(B2>E2,B2,E2)-E2,C2-IF(C2=0,0,1),IF(B2>E2,B2,E2)-E2) (GobGob) 2014/08/22(金) 17:02
返事が遅れて申し訳ないです。 条件を考える事もそうですが設定時の優先順位がうまく付けられなくて思った値がなかなか出てこないです。 IF関数だとすごく長くなるのでなおさらこんがらがります。 ゆっくりGobGobさんの条件の付け方を考えてみます。 ありがとうございました。
(のBI太)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.