私は、特定の値に一致する配列内の最後のセルのインデックスを見つけるという、十分に単純なタスクを実行しようとしています。
MATCH-INDEX 関数の組み合わせを使用していますが、結果が不正確で一貫性がありません。問題がわかりません。
この例では、値が 1 または -1 の配列を使用し、配列内の最後の 1 のインデックスを見つけようとしています。
私の理解では (式の評価ツールを使用して確認します)、INDEX(A1:F1=1,0) は次の配列を返す必要があります。
{FALSE,TRUE,FALSE,TRUE,FALSE,FALSE}
MATCH(TRUE,...) の結果が 4 にならないのはなぜですか? MATCH は配列内で逆方向に動作し、最後の一致のインデックス (4 番目の位置の TRUE 値) を返す必要があります。
しかし、ここでは、このコードの結果は 6 です。
さらに悪いことに、同じコードを使用して INDEX に渡される配列を変更すると、結果に一貫性がなくなります。配列の値を 1 または -1 に変更すると、数式の結果が変わる場合と変わらない場合があり、その理由がわかりません。
以下では、3 番目の配列値のみを変更すると、式の結果が 4 から 6 に変更されます。