結論
ArrayFormula (範囲指定した関数)
で指定した範囲まで関数が続きます
まずはこちらの関数をご覧ください
=if(C2="","",1)
とても通常の関数です。
これをB3、B4…と下に続けたい場合、関数を下に引っ張ることも手ですが、
こんなときにArrayFormulaを使ってみましょう
まずは実例です。
=ArrayFormula(if(C2:C="","",1))
ポイント①セル指定部分を関数を適用したい範囲にしよう
始めの例だと、C2=となっていましたが、ArrayFormulaの場合C2:Cとなっています。
これは、C2から始めて一番下まで関数を適用してね、ということです
ポイント②ArrayFormulaは最後にショートカットキーで入れ込もう
今回の例の関数を組むときの順序です
①=if(C2:C=””,””,1) とまずは記載する
②Shift + Alt(macはCommand) + Enter
を同時に押すとArrayFormulaが入ります。
ポイント③COUNITFS、SUMIFSなどArrayFomulaが使えない関数もあります
これはなぜか。
そもそもArrayFormulaの指示が上記の例の関数だと
まずC2をみて判断して、次にC3を見て、次にC4を見て…
となっています。
一方、例えばCOUNTIFSの場合、仮に
=ArrayFormula(countifs("OK",C2:C))
と入力して、C列に1と記載されているセルの数を数えようと期待すると、結果は違って
こんなふうになってしまいます。
これはArrayFormulaの前提に立ち返ると、まずはC2を見てOKが入っているか確認し、その結果をC2に書き込み、次にC3に行って…
となるためです。
以上のように注意事項もありますが、基本汎用性のある便利な関数なので是非使ってみてください
コメント