2009年1月25日日曜日

COUNTIF() うまくいかない

エクセルの計算式で久しぶりにハマった。。。 COUNTIFで1となるはずが、2となる!? なぜだ!?

範囲
検索値
一致数→ =COUNTIF(範囲,検索値)
11-16
11-16
2
12-15
16-11
2
13-14
 
 
14-13
 
 ↑想定なら、1 なはずがっ!?
15-12
 
 
16-11
 
 ("13-14" だと 一致数=1でOK)
範囲
検索値
一致数→ =COUNTIF(範囲,検索値)
111-116
111-116
1
112-115
116-111
1
113-114
 
 
114-113
 
 ↑OK
115-112
 
 
116-111
 
 
範囲
検索値
一致数→ =COUNTIF(範囲,検索値)
111-16
111-16
1
112-15
116-11
1
113-14
 
 
114-13
 
 ↑OK
115-12
 
 
116-11
 
 
COUNTIF(SUMIFでも同じかと)で、検索値に "数値-数値" となっている時に、思ったとおりに計算ができない。
しかもタチが悪いことに、全部NGなら調べもつきやすいものの、OKなもの("13-14" だと 一致数=1 でOK)もあるし、NGの特定ができない。。。 
"+"みたいに論理演算されてる? とか思ったけど、それとも違うし ということで、ぐぐっても、うまく解決策を見つけられず。。。
結局、式中 日付として検索されているようでした。。。 "-"の前後を入替えても日付として処理できる文字列だと、こうなるようだ。
以前から時々こういう形式で計算式作ってたな、、、、気が付かないところで集計間違いがあってもおかしくないな。 あーキケン。

範囲
検索値
一致数→ =COUNTIF(範囲,検索値)
シリアル→ =DATEVALUE(検索値)
日付形式表示
11-16
11-16
2
40133
11月16日
12-15
16-11
2
40133
11月16日
13-14
 
 
 
 
14-13
 
↑想定なら、1 なはずがっ!?
↑日付に変換すると同じ値がっ!!
 
15-12
 
 
16-11
 
 
 
 
範囲
検索値
一致数→ =COUNTIF(範囲,検索値)
シリアル→ =DATEVALUE(検索値)
日付形式表示
111-116
111-116
1
#VALUE!
 
112-115
116-111
1
#VALUE!
 
113-114
 
 
 
 
114-113
 
↑OK
↑日付で処理できない
 
115-112
 
 
116-111
 
 
 
 
範囲
検索値
一致数→ =COUNTIF(範囲,検索値)
シリアル=DATEVALUE(検索値)
日付形式表示
111-16
111-16
1
#VALUE!
 
112-15
116-11
1
#VALUE!
 
113-14
 
 
 
 
114-13
 
↑OK
↑日付でない
 
115-12
 
 
116-11
 
 
 
 

0 件のコメント: