• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルIF文をROUNDUPで短く書き)

エクセルIF文をROUNDUPで短く書き

このQ&Aのポイント
  • エクセルのIF文を使用して、ROUNDUP関数を使って短く書く方法について質問があります。
  • シート1のI列O列の値に応じて、シート2のE3に判定結果を表示するセル式を作成したいです。
  • Iの値が0の場合はE3を空白表示し、それ以外の場合はO列の値を計算して表示するルールをセル式にしたいです。

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

  • ベストアンサー
  • don9don9
  • ベストアンサー率47% (299/624)
回答No.2

I列とO列は500件程度のデータが入っているんですよね。 シート2のE3に判定結果とおっしゃいますが、その判定とは500件のデータ1件1件に対して個別に判定を行うのか、500件すべての合計や平均などから判定を行うのかがまずわかりません。 >40より小さかったら24、 >35より小さかったら21、 >30より小さかったら18 >の調子で5増えるごとに3の倍数で値が減っていき0以上なら0とする、セル式を作成したいです。 具体例と説明が一致していません。 これでは、5「減る」ごとに3の倍数で値が減っているようにしか見えません。 >5<O<0→0 >10<O<-5→3 >15<O<-10→6 >20<O<-15→9 >25<O<-20→12 >30<O<-25→15 >35<O<-30→18 >40<O<-35→21 この条件式も不等号が全部おかしいです。 仮に不等号の向きが逆であっても、下の式が上の式を全て包括する条件になっています。 結局、Oの値が何の場合に何の値を返したいのかわかりません。 そもそもO列に入りうる値の範囲はどのくらいなのでしょうか。 上記条件式を見るに、マイナスの値が入ってくる可能性もあるということですか? やりたいことをもっと整理して、正確に記述してください。 申し訳ないですが、この質問内容では何をしたいのか理解できません。 O1の値が5増える毎に3増えるような値を返すなら =LOOKUP(O1,{0,1,6,11,16,21,26,31,36},{0,3,6,9,12,15,18,21,24}) このような方法もありますが、やりたいことと適合するかはわかりません。 (上記式の場合、O1が0より小さい値の場合はエラー、36以上の値の場合は全て24を返します)

noname#145883
質問者

お礼

500件のデータ1件1件に対して個別に判定を行います。 不等号で判定する数値にマイナスが抜けています ご指摘のとおり、今のままでは、他者が理解できません。 しっかり整理したいと思います

その他の回答 (3)

回答No.4

=IF(A1=0,"",MAX(0,ROUNDUP(A1/-5,0)*3-3)) ととらえてみた。

noname#145883
質問者

お礼

おそらく、この形が正解に近いかとは思いますが、まだよくわかっていません。ご教授感謝します

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

シート2のE3セルには次の式を入力してはどうでしょう。 =IF(SUMPRODUCT((Sheet1!I$1:I$1000<>"")*(Sheet1!O$1:O$1000))>0,IF(MOD(SUMPRODUCT((Sheet1!I$1:I$1000<>"")*(Sheet1!O$1:O$1000)),5)=0,(SUMPRODUCT((Sheet1!I$1:I$1000<>"")*(Sheet1!O$1:O$1000))/5+1)*3,ROUNDUP(SUMPRODUCT((Sheet1!I$1:I$1000<>"")*(Sheet1!O$1:O$1000))/5,0)*3),0)

noname#145883
質問者

お礼

すぐには理解できないですが、参考にさせていただきます。 感謝します

  • DJ-Potato
  • ベストアンサー率36% (692/1917)
回答No.1

不等号の向きが全然意味不明なことになってます。 5より大きく0より小さい数はありません。 10より大きく-5より小さい数もありません。 以下同様。 ROUNDUP関数で5ではなく-5で割っているのか、よくかわりません。 この場合、計算結果はすべて負の数で表示されると思いますが。 I列には45以上の値が入ることはないのですか? 40以上で24に落とし込む要素が入っていません。 =IF(A1=0,"",MAX(MIN(ROUNDDOWN(A1/5,0)*3,24),0)) あたりでどうですか?

noname#145883
質問者

お礼

初歩的なミスです。やりたいことがまだ整理できていないようです ありがとうございます

関連するQ&A