私は、INDEX関数内で全く同じFILTER関数を2回使用するスプレッドシート式を持っています。自分自身を繰り返すことを避ける方法はありますか、そして/または簡単な表現のバージョンはありますか?スプレッドシートでの繰り返しの回避方法= INDEX(FILTER()、FILTER())式ですか?
式は(余分な明確性のほんの少しのために複数の行に分割)次のようになります。
=INDEX( FILTER($A$1:$P$1, ($A$1:$P$1 = "ANIM")+($A$1:$P$1 = "COMP")+($A$1:$P$1 = "SENT TO EDIT"), NOT (ISBLANK(A2:P2))), COLUMNS( FILTER($A$1:$P$1, ($A$1:$P$1 = "ANIM")+($A$1:$P$1 = "COMP")+($A$1:$P$1 = "SENT TO EDIT"), NOT (ISBLANK(A2:P2)))))
どう表現がないこと行の右端の非空白列の見出しを返すです列が「ANIM」、「COMP」、または「SENT TO EDIT」のいずれかであるかぎりです。
は、このGoogleスプレッドシートの列Qにアクションで式を参照してください。https://docs.google.com/spreadsheets/d/1JCwmv2Bkz4v4_0wbM07IxcUtqCfm2242p0IVbex-I5c/edit?usp=sharing
FILTER機能はまったく同じ両方の時間ですので、私は変数を使用することができれば、それは書き換えることができ
range1 = FILTER(.....); INDEX(range1、COLUMNS(range1));
FILTER式の繰り返しを避けるために、そのようなやり方をする方法はありますか?
私は外部機能を避けることを望んでいました。この特定のケースでは、私は機能を使用するよりもむしろ自分自身を繰り返すと思います。 :-) –
結果の配列のサイズが常に同じであれば、カスタム関数を避けることができます。それ以外の場合は、カスタム関数を使用したくない場合は、自分自身を繰り返してください。 –