質問があります。
シート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
----------------------------------------------------------------------
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を返します)
500件のデータ1件1件に対して個別に判定を行います。
不等号で判定する数値にマイナスが抜けています
ご指摘のとおり、今のままでは、他者が理解できません。
しっかり整理したいと思います
No.4
- 回答日時:
=IF(A1=0,"",MAX(0,ROUNDUP(A1/-5,0)*3-3))
ととらえてみた。
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)
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))
あたりでどうですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
- Excel(エクセル) エクセルの数式について教えて下さい。 8 2023/05/27 12:17
- Excel(エクセル) 【Excel関数】値が合致するセルの隣のセルを表示させたい 8 2022/10/12 17:44
- Visual Basic(VBA) エクセルのマクロで対象ごとにシート分けしてその内容をセルに書き込みたい 9 2022/08/24 13:23
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 3 2022/06/10 09:24
- Excel(エクセル) 条件に合った数値の合計を表示させたい関数と条件指定の方法 3 2023/05/13 16:07
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 1 2023/02/27 22:21
- Visual Basic(VBA) VBA 改行コードの取り方 1 2022/03/22 14:14
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
Excel 日付を比較したら、同じ...
-
英数字のみ全角から半角に変換
-
会社PCのメールが更新されない
-
Outlookを立ち上げたらGoogleロ...
-
outlookのメールが固まってしま...
-
Excelで空白以外の値がある列の...
-
ウィンドウィズ メモ帳で日付だ...
-
Excelに貼ったリンクについて E...
-
Microsoft Formsの「個人情報や...
-
Excelで時間計算(負)
-
microsoft office
-
【Excel VBA】PDFを作成して,...
-
エクセルでXLOOKUP関数...
-
マイクロソフト 一時使用コード...
-
Outlookでの時間指定送信機能に...
-
【スプレドシート】目標達成の...
-
Googleのスプレッドシートでシ...
-
Microsoft Officeを2台目のPCに...
-
MicrosoftOfficeについて質問で...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
【スプレッドシート】指定の日...
-
英数字のみ全角から半角に変換
-
会社PCのメールが更新されない
-
マイクロソフト 一時使用コード...
-
Office 2021 Professional Plus...
-
エクセルで例えば、関数を使っ...
-
Microsoft Formsの「個人情報や...
-
1つのPCに「Excel 2010」「Exc...
-
エクセルで例えば、A1に㈱ベ...
-
理由を教えてください。
-
エクセルでXLOOKUP関数...
-
マイクロソフト オフィスについて
-
VLOOKUP関数について
-
teams設定教えて下さい。 ①ビデ...
-
Googleのスプレッドシートでシ...
-
【Excel VBA】PDFを作成して,...
-
Microsoft365で写真をアルバム...
-
Outlook で宛先が複数の場合の人数
-
Excel テーブル内の空白行の削除
おすすめ情報