回答:
COUNTA
空ではない範囲のセルの数を示します。
だから...
=IF(NOT(COUNTA(BM2:BQ2)),"","Major Milestone Due")
isblank
あなたが使用して、配列数式としてこれを入力しない限り、配列のために動作しませんctrl+ shift+ enter。中かっこで囲むと、次のようになります。
{=IF(ISBLANK(BM2:BQ2),"","Major Milestone Due")}
また、if-countaはこれを問題なく行います-
=IF(COUNTA(BM2:BQ2)=0,"","Major Milestone Due")
TRUE
に移動しFALSE
ます。範囲内のすべてのセルを正しくチェックするには、AND
追加する必要があります{=IF(AND(ISBLANK(BM2:BQ2)),"","Major Milestone Due")}
ISBLANK
。その数式を入力して、範囲の最初のセルを空白のままにして、範囲内の後のセルにデータを入力してください。ISBLANK
条件はまだ返されTRUE
ます。最初のセルにデータを入力した場合のみ、FALSE
正しく返されます。追加してみてくださいAND
。範囲内のいずれかのセルにデータが追加された場合、そのセルは正常に戻りFALSE
ます。(これは2010年の奇妙な変種だけではないと思います。)
考慮すべき重要なことは、「空白」の定義です。「別の空白を返したい」という言葉を使用したという事実に基づいて、空白を表示するセルとして「空白」を定義しているように見えますが、実際には、出力する""
ため空ではない数式が含まれている可能性があります。
COUNTA
そしてISBLANK
あなたがそれらの2つの式が本当に探しているので、ブランクとして、細胞のこれらの種類を扱いたい場合のメソッドは動作しません空のセル。出力する数式を処理""
するには、2つのオプションがあります。
=IF( COUNTBLANK(BM2:BQ2)=5, "", "Major Milestone Due")
=IF( COUNTIF(BM2:BQ2,"")=5, "", "Major Milestone Due")
SUMPRODUCT
:=IF( SUMPRODUCT(--(BM2:BQ2<>""))=0, "", "Major Milestone Due")
(COUNTIF(BM2:BQ2,"<>")
と同じ問題があることに注意してくださいCOUNTA
。)
ほぼ同じ質問の答えを探してこのページにたどり着きました。
それCOUNTA
が言及されているのを見たとき、私はほとんどすぐに何をすべきかを知っていました。少し異なるコンテキストでは、列の左側に列の範囲がありnot started
、同じ行のすべてのセルが空(空白)である場合に言いたいことがあります。
次の式は私のために働きます。
=IF(COUNTA(P3:U3)=0,"Not Started"...)
省略記号はIF
、数式にいくつかの追加の関数があり、1つ以上が入力されている場合に範囲でさらにテストを実行することを示しています。