[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『上下の足し算を条件で処理を変える』(ぺんこ)
【表?@】
A列 B列 C列 3 南PARKING1F必要人員 5 2 4 南PARKING2F必要人員 -3 0 5 北PARKING1F必要人員 2 2 6 北PARKING2F必要人員 3 3
と並んでいるデータに対して
必要人員を1F・2Fで合算した結果を計算させたいです。
結果7人の人員が必要、とC列で判る状態にしたいです。
C列に入れる関数として
=IFS(COUNTIF($A3,"*1F*")>0,IF(B3<=0,"0",IF(B4<=0,SUM(B3:B4))),COUNTIF($A3,"*2F*")>0,IF(B3<=0,"0",IF(B3<=0,SUM(B2:B3))))
と書きましたがうまく計算されません。
・マイナスとなった場合は0で返す
・1Fが含まれる場合、下のセルがマイナスの値なら引き算させる。
・2Fが含まれる場合、上のセルがマイナスの値なら引き算させる。
・1Fも2Fも0以上ならそのまま値を返す
というように関数を組みたいのですが、アドバイスいただけますでしょうか。
< 使用 Excel:Excel2013、使用 OS:Windows10 >
(γ) 2021/11/23(火) 09:01
ありがとうございます。
1Fも2Fも0以上ならそのまま値を返す
さらにもう一つIF関数で条件を加えて
IF(B3ANDB4>=0,B3,)
を組み込めば良いでしょうか?
(ぺんこ) 2021/11/23(火) 12:01
(γ) 2021/11/23(火) 12:24
ああそうでしたか、IFSはExcel2016以降しか使えなかったですね。 ご指摘ありがとうございました。 (Nameエラーなら、使えない関数だとすぐにわかりそうなものです。)
私の指摘は変わりませんが、それを踏まえて、こんな風に変えてみてはどうですか?
=IF(COUNTIF($A3,"*1F*")>0, IF(B3<=0,0,IF(B4<=0,SUM(B3:B4),B3)), IF(COUNTIF($A3,"*2F*")>0, IF(B3<=0,0,IF(B2<=0,SUM(B2:B3),B3)), "" ) ) これをC3セルの数式バーにコピーペイストしてみてください。
IFSが使えるならこうですか。 =IFS(COUNTIF($A3,"*1F*")>0, IF(B3<=0,0,IF(B4<=0,SUM(B3:B4),B3)), COUNTIF($A3,"*2F*")>0, IF(B3<=0,0,IF(B2<=0,SUM(B2:B3),B3)), TRUE, "" )
なお、B列を絶対参照にするかどうかの論点は考慮していません。 (γ) 2021/11/24(水) 10:39
補足。 IFS関数が使える2016はOFFICE365に含まれていた2016の場合で買い切りの2016(多分現在使われている2016はほとんどこっち) では使えない。 (ねむねむ) 2021/11/24(水) 10:48
=IFS(COUNTIF($A3,"*1F*")>0,MAX(0,SUM(B3,MIN(B4,0))),COUNTIF($A3,"*2F*")>0,MAX(0,SUM(B3,MIN(B2,0))))
MIN(B4,0):B4が0未満ならB4,B4が0以上なら0(B4がプラスの値なら算入しない)。 SUM(B3,MIN(B4,0)):上記とB3を足す。(B3よりB4のマイナス値が大きい場合マイナス値になるが下記式により0になる)。 MAX(0,SUM(B3,MIN(B4,0))):上記が0未満なら0、0以上なら上記の値。 ※後半の式はB4をB2に変えただけなので読み替えてください。
(きまぐれおじさん) 2021/11/24(水) 10:50
ねむねむさん、補足のご指摘ありがとうございます。 発言した際に確認したネット上の記事には、 「2013以前のVersionでは使えない」としか書いてありませんでした。 私が勝手に拡大解釈してしまいました。微妙なものなんですね。thanks. (γ) 2021/11/24(水) 14:34
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.