[[20170621105924]] 『IF関数の数式』(いんこ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『IF関数の数式』(いんこ)

教えていただけますか?

セルのA1に数字を入れたい。
条件は下記の通りです。

・F28が 0 だったら 0
・F28が 1 だったら 1
・F28が 1より大きかったら H28/F28の計算した値を入れたい。

  (F28とH28には、それぞれF1-F27までの合計とH1-H27までの合計が
  計算されるようになってます。)

=IF(F28=0,"0","")&IF(F28=1,"1","")&IF(F28>1,"(H28/F28),""")

上記のように作りましたがエラーです。

何がおかしいのか教えてください
お願いいたします。

< 使用 Excel:Excel2016、使用 OS:Windows7 >


 =IF(F28<2,F28,H28/F28)

 ↑ だと何か問題ありますか?

 >=IF(F28=0,"0","")&IF(F28=1,"1","")&IF(F28>1,"(H28/F28),""") 
 >何がおかしいのか教えてください

 =IF(F28=0,0,IF(F28=1,1,H28/F28))  

 では?
(笑) 2017/06/21(水) 11:39

かぶりましたが、ダブルクォートで括ったり、& で連結したり、文字列編集しているだけで、全く計算していませんよ?
 =IF(F28<=1,F28,H28/F28)
(???) 2017/06/21(水) 11:45

 >=IF(F28=0,"0","")&IF(F28=1,"1","")&IF(F28>1,"(H28/F28),""") 
 >何がおかしいのか教えてください
=IF(F28=0,0,"")&IF(F28=1,1,"")&IF(F28>1,H28/F28,"")

おかしい場所 1
だったら 0
だったら 1
より大きかったら H28/F28の計算
の部分には "  " ダブルクォーテーションによる括りは不要

おかしい場所 2
"(H28/F28),""")
たとえダブルクォーテーションで括るような式(計算結果ではなく、「H28/F28」という文字列を返したい)であったとしても、
正しくは
"(H28/F28)","")

おかしい場所 3
一応、やりたいことはわかるのですが、
もし 0 だったら 0  0でなければ 空白
& による連結
もし 1 だったら 1  1でなければ 空白
& による連結
もし 1より大きかったら H28/F28の計算 1以下なら 空白
という風に「条件外なら空白を作成」して連結するのではなく、

笑さんの書かれたように
 もし 0ならば、0 そうでなければ↓
  もし 1ならば 1 そうでなければ H28/F28
という風に、「条件外なら次の条件判定へ移る」ように、「入れ子」にするのが普通です。

 =IF(F28=0,0,IF(F28=1,1,H28/F28))  

06/21 12:30 追記
 もし 0ならば、0 そうでなければ↓
  もし 1ならば 1 そうでなければ↓
   もし 1より大きければ H28/F28 そうでない(1未満であり、0ではない,つまり、負の数や0.5等のとき)ならば、 ""空白
とした方が良いですかね?

 =IF(F28=0,0,IF(F28=1,1,if(F28>1,H28/F28,"")))  

(tata) 2017/06/21(水) 12:22


笑さん、tataさんへ

ご指摘ありがとうございました。
笑さんの数式を入れて問題解決。と思ったのですが。
再び問題が。

F28にはF1からF27までは数字が入ります。
0もあれば1以上の数字も入ります。

H28にはH1からH27までの数字が入ります。
0もあれば1以上の数字も入ります。

F28に1以上の数字が入っていても
H28が0だったら 1 と表記したいのです。

なおかつ、H28とF28が両方とも 0 だったら 0

なおかつ、F28とH28に 0 以外の数字が入っていたら H28/F28 で
計算した数値を入れたいです。

F28が 0 でH28が 0 でしたら 0で表記
F28が 32 でH28が 0 でしたら 1で表記
F28が 8  でH28が 32 でしたら H28/F28 出計算された 4 で表記

説明不足でごめんなさい。
そしてなにも分かってなくてすみません。

(いんこ) 2017/06/21(水) 13:29


私の回答は無視ですかね?
新条件で判らないのは、F28が0で、H28が0以外ならどうしたいのかなぁ?、という点。とりあえず、この場合は1にすると仮定した例なぞ。
 =IF(H28=0,IF(F28=0,0,1),IF(F28=0,1,H28/F28))
(???) 2017/06/21(水) 13:49

???さん
お礼もせずにごめんなさい。
新条件でF28が 0 の場合は H28に数字が入ることはないです。

H28が 0 だとして、
F28が 0 だった場合は 1 の式が真ん中の部分?
最後のIFが 0 ではない場合はの式?
0÷0は0ですからF28・H28が両方とも 0 の場合は
式はいらないですか?
この式で行けました。
ありがとうございました。

(いんこ) 2017/06/21(水) 14:13


私の書いた式を言葉で書くと、以下になります。

H28が0ならば、F28が0なら0、他なら1。
H28が0以外ならば、F28が0ならば1(これはあり得ないとの事ですが、このままでも問題なし)、他なら計算。

0/0は0だから…、というのは認識違いかと。分子が何であれ、分母が0だとエラーになりますよ。
両方0の場合は、おっしゃる通り2つ目のIF中の真ん中の0ですね。ここに該当します。
(???) 2017/06/21(水) 14:46


 >新条件でF28が 0 の場合は H28に数字が入ることはないです。

 数字が入ることはない → H28も「0」になる、という意味なら

 =IF(F28=0,0,IF(H28=0,1,H28/F28))

 これでできませんか?

 参考まで。
(笑) 2017/06/21(水) 15:01

???さん、笑さんへ

難しいけど、なんとなく分かりました。
お二人とも数式は違いますが、値は合います。
理論式を元に、そこに合っている場合(真の場合)と
違っている場合(偽りの場合)で数式を組み立てるのですね。
勉強になるお話ありがとうございました。
今後またわからなくなりましたら質問させてください。
感謝です。

(いんこ) 2017/06/21(水) 16:29


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.