0

配列数式を使用するスプレッドシートで、複数の条件に基づいて一意の値のリストを作成しています。式は以下のとおりです。

{=INDEX(INDIRECT($O$3&"!$L$2:$L$"&$O$16),SMALL(IF((INDIRECT($I$3,FALSE)=$O$7)*(INDIRECT($K$3,FALSE)=$O$9)*(INDIRECT($M$3,FALSE)=$O$11)*(INDIRECT($X$17,FALSE)=$O$15)*(INDIRECT($AF$17,FALSE)>$O$15),ROW(INDIRECT($O$3&"!$L$2:$L$"&$O$16))-2,""),ROW()-20))}

IF 関数の場合、質問はこの部分に属します。

(INDIRECT($K$3,FALSE)=$O$9)

セル $O$9 には、セル コンテンツ変数の 1 つと <>、<>*、<> * テキスト*、"" を含むドロップダウンが含まれています。

直接テキスト一致を使用すると、特定の列に果物のリストが含まれ、「リンゴ」が値の 1 つである場合、$O$9 に「リンゴ」という単語が含まれると、式が機能し、一意のリストが得られます。$O$9 に上記の組み合わせ (<>、<>*、<> * Text*、"") が含まれていると、エラーが発生します。

質問: "=$O$9" を変更して、次の $O$9 の内容を <>、<>*、<> * Text*、"" などに等しいものとして使用できるようにする方法を教えてください。

:セル $O$9 のドロップダウンを調整することはできませんが、配列数式のみを変更できます。

前もって感謝します!

4

1 に答える 1

1

これは決して完全な答えではありませんが、私の考えを示すだけです:-

私が AA と BB と呼んだ 2 つの列範囲があり、$O$9 に基づいていくつかのテストを実装したいとします。次のようになります。

=SUM((BB=1)*IF($O$9="<>",AA<>"",IF($O$9="<>*",AA="",IF(ISNUMBER(FIND("*",$O$9)),ISERROR(FIND(MID($O$9,4,LEN($O$9)-1),AA)),$O$9=AA))))

つまり、あなたの (INDIRECT($K$3,FALSE)=$O$9) は、上記の SUM に続く括弧の内容のようなものになる必要があるということです。

于 2016-05-04T12:42:12.220 に答える