[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『COUNTIF関数がおかしい?』(Hatch)
別スレ↓で気が付いたのですが、よろしくお願いします。 [[20060328144619]]『時間のカウント』で=COUNTIF(A1:A10,"<>0")という数式を試したところ カウントがおかしいことに気づきました。 (実行例) 1.Excelを起動し、Sheet1のA1に「1」A2に「1」と入力します。 2.C1セルに=COUNTIF(A1:A10、"<>0") と入力します。「2」と表示されます。 3.A1セルをDelでクリアします。 C1セルは「2」のままです。 4.C1セルのフィルハンドルを右へドラッグして、D1に「=COUNTIF(B1:B10,"<>0")」とコピーします。 5.D1セルは「2」となります。 なお、B1:B10は何も入力されていません。 「0」とならないのはなぜでしょう? 裏でExcelが何か変なことをやっていそうな気がするのですが? これは、皆さんのExcelでも再現されるのでしょうか? Excel2002 SP3、Windows Xp SP2の環境です。
C1に式を入れた時点で10になりますが。 2になるというところから疑問です。 こちらはxl2003ですが、2002ではそのようになるのでしょうか。 (やっちん)
ちなみにExcel2000でも10が返ります。
(川野鮎太郎)
私もC1に数式を入れた時点(上記手順2)で10になります。 0では無い物をカウントして10・・でしょうか? A3以降に0を入力するとその分減算されていきます。 Excel2003 SP2 Windows Xp (ぼう)
そうですか・・・A1:A10が未入力でC1に=COUNTIF(A1:A10,"<>0")と入力すると、 「1」と表示されます。Windowsを再起動してみても同じ結果でした。 さて・・・どこかの設定でしょうか? 心当たりは無いのですが・・・ (Hatch)
調査協力
WinXP SP2 EXCEL2000 SP3
C1=常に10 ← NullもSpaceも数えているミタイ・・
(caro) 2006.03.28 17:05 今夜自宅の WinMeでもやってみましょう・・
衝突。。。 本当だ・・・_/ ̄|○ il||li 起動直後の場合は、Hatchさんのおっしゃるとおりになりますね。
(川野鮎太郎)
Hatchさんの現象が再現されました。(Excel2002) おかしいですね。 > A1:A10が未入力でC1に=COUNTIF(A1:A10,"<>0")と入力すると、 >「1」と表示されます この後、A1:A10 のとれかに 0 を入力してみて下さい。入れるセルによって C1の答えが変わります。ホントに変、、? (純丸)(o^-')b
Excel97sr2では、このようになります。
未入力の状況で数式を入力する位置でも戻り値が変ります。 C3に=COUNTIF(A1:A10,"<>0")としますと、3が戻り、 C5に=COUNTIF(A1:A10,"<>0")では、5が戻ります。
A8になにか入力し、削除しますと、両方とも8がもどります。
この関数は、そのような仕様なのではないのでしょうか? (LOOKUP)
仕様のようですね。 http://support.microsoft.com/kb/161757/ja
最終セルが一度使った場所になるのと同様の現象でしょうか。
(川野鮎太郎)
よく検証しませんでした・・・ 今後気をつけよう。 (...)
どうやら、こちらのPC or Excelの問題ではなさそうで少し安心しました。 川野鮎太郎さん提示のページによると、COUNTIFの仕様上の問題のようですね。 LOOKUPさん提示のExcel97sr2とも同じ挙動を示しますので、昔から変わっていないようです。
空白セル 未入力セル <>0 <>"" などには注意をした方がよさそうですね。 皆さん、ありがとうございました。 これまでのファイルにCOUNTIF系と<>0等を組み合わせいないことを祈りながら・・・(Hatch)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.