アプリ版:「スタンプのみでお礼する」機能のリリースについて

質問があります。

シート1のI列O列の値(データは500件程度あるが)に応じて、シート2のE3 に判定結果を表示するセル式を作成しようとしています。

まずIの値でE3を空白表示するか決めます。その後O列の値が
40より小さかったら24、
35より小さかったら21、
30より小さかったら18
の調子で5増えるごとに3の倍数で値が減っていき0以上なら0とする、セル式を作成したいです。


---------------------------------------------------------
以下の式は文章で表現したようになっているでしょうか

=IF('シート1'!I:I=0,“ “, ROUNDUP(シート1!O/-5,0)*3)
---------------------------------------------------------


-----------------------------------------------------------------------------
I=0     →“ “
I=0でなければOの値で判定
0=>O→0

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<40    →24
----------------------------------------------------------------------

A 回答 (4件)

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を返します)
    • good
    • 0
この回答へのお礼

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

お礼日時:2011/12/23 09:26

=IF(A1=0,"",MAX(0,ROUNDUP(A1/-5,0)*3-3))


ととらえてみた。
    • good
    • 0
この回答へのお礼

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

お礼日時:2011/12/26 01:02

シート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)
    • good
    • 0
この回答へのお礼

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

お礼日時:2011/12/26 01:01

不等号の向きが全然意味不明なことになってます。


5より大きく0より小さい数はありません。
10より大きく-5より小さい数もありません。
以下同様。

ROUNDUP関数で5ではなく-5で割っているのか、よくかわりません。
この場合、計算結果はすべて負の数で表示されると思いますが。

I列には45以上の値が入ることはないのですか?
40以上で24に落とし込む要素が入っていません。


=IF(A1=0,"",MAX(MIN(ROUNDDOWN(A1/5,0)*3,24),0))
あたりでどうですか?
    • good
    • 0
この回答へのお礼

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

お礼日時:2011/12/26 00:59

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!