[[20200504195137]] 『IF入れ子について』(しげのぶ) ページの最後に飛ぶ

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

 

『IF入れ子について』(しげのぶ)

IF 入れ子について教授お願いします。
以下のような場合
IF(COUNTIF(E2058,"*東"),110 ←この部分が反映されていないのですが
どこか間違っているのでしょうか
よろしくお願いします。
=IF(G2058=0,"",IF(I2058="○",220,IF(COUNTIF(D2058,"*給*"),H2058,IF(COUNTIF(E2058,"*東"),110,220))))

< 使用 Excel:Excel2019、使用 OS:Windows10 >


こんばんは。
確認です。
(1)E2058セルはどんな内容ですか?
(2)どのようになるはずと考えているのですか?
(3)しかし、実際はどうなるのですか?
それぞれを省略せずに示してください。

(γ) 2020/05/04(月) 23:00


(γ)さん
返事ありがとうございます。
>(1)E2058セルはどんな内容ですか?
 固有名詞です 例;東京 埼玉 など多種です。

>(2)どのようになるはずと考えているのですか?
 110を入ればOKなんですが、今は 220です
こんな感じです。

マクロで対応できますか?
(しげのぶ) 2020/05/05(火) 01:32


一般的な話を聞いているのではなく、
想定外のことが起きたときの"具体的な"文字列を質問したのです。
もう一度回答してください。(だいたいの想像は付くが、筋だから)
# これだけ慎重に質問したんだけれど、力及ばずですか。

(γ) 2020/05/05(火) 02:36


失礼しました。
以下です
E2058 = 東京信用 です。
希望する値は 110 です。
見当違いでしょうか?

(しげのぶ) 2020/05/05(火) 04:48


 COUNTIF(E2058,"*東") 
 というのは、
 E2058の値が、任意の文字列+"東"
 つまり、最後が"東"で終わる文字列のときに
 1が返り、
 IF関数ではTrueと同等と見なされるのではないですか?

 東
 大阪東
 とかは1が返りますが、
 東京信用は東で終わっていませんからカウントされません。0が返ります。

 COUNTIF(D2058,"*給*")と同じように
 COUNTIF(D2058,"*東*")
 とする必要があるんじゃないですか?
 もし、東で始まる文字列なら
 COUNTIF(D2058,"東*")です。

 # こうなるはずという文章をご自身で書いてもらうことが、質問の明確化と同時に
 # それを客観的に考えるひとつの切っ掛けになると思って、
 # あえて「想定」と「実際」を書いてもらうことに、私はしています。
 # 急いでいるんだから、早くしてください、といった解釈はされないようにしてください。

(γ) 2020/05/05(火) 05:38


以下の通り、修正してみたのですが 110が返りません。220が来る(E2058=東京信用)
IFが多過ぎですか?
=IF(G2058=0,"",IF(I2058="○",220,IF(COUNTIF(D2058,"*給*"),H2058,IF(COUNTIF(E2058,"東*"),110,220))))
(しげのぶ) 2020/05/05(火) 06:23

追伸
IF(I2058="○",220 ←この条件は満たしていますが×でしょうか?
(しげのぶ) 2020/05/05(火) 06:25

それらの判定の確認は、自分で出来る範囲の話ですし、自分ですべきことです。
その辺は、常識で判断して下さい。

話の出発点は
>IF(COUNTIF(E2058,"*東"),110 ←この部分が反映されていないのですが
というものでした。
少なくともそれはクリアーできたと思っています。
(γ) 2020/05/05(火) 07:24


 >G2058=0,""

 単にG2058が空白だからじゃないですかね?(数式の場合、空セル=0)

 >IF(COUNTIF(E2058,"*東"),110 ←この部分が反映されていないのですが 

 他の部分は反映されているのか確認したのでしょうか?

(BJ) 2020/05/05(火) 16:43


(BJ)さん
ありがとうございます。
=IF(G2058=0,"",IF(I2058="○",220,IF(COUNTIF(D2058,"*給*"),H2058,IF(COUNTIF(E2058,"東*"),110,220))))
>単にG2058が空白だからじゃないですかね?(数式の場合、空セル=0)
=IF(G2058=0,0, で確認しました。
>他の部分は反映されているのか確認したのでしょうか?
はい、ほかは問題なく
優先順があるのでしょうか?
IF(I2058="○",220 ←が問題でしょうか(これがIF条件に合致しています) 
220で表示されます。
(γ)さん
ありがとうございます。
もう少し確認してみます。
(しげのぶ) 2020/05/05(火) 17:30

 >優先順があるのでしょうか? 

 あります。
 最初に合致した時点で後は見ない。
(BJ) 2020/05/05(火) 17:45

(BJ)さん
ありがとうございました。
もう一度、仕様を確認してみます。
(しげのぶ) 2020/05/06(水) 03:29

コメント返信:

[ 一覧(最新更新順) ]


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