Excel

最後の試合を取得

Get Last Match

Excelの数式:最後の一致を取得一般式
{= MAX ( IF (criteria, ROW (rng)- MIN ( ROW (rng))+1))}
概要

ルックアップ値の最後の一致(つまり、最後の出現)の位置を取得するには、IF、ROW、INDEX、MATCH、およびMAX関数に基づく配列数式を使用できます。示されている例では、H6の式は次のとおりです。



日付をExcelに入れる方法
 
{= MAX ( IF (names=H5, ROW (names)- MIN ( ROW (names))+1))}

ここで、「名前」は 名前付き範囲 C4:C11。

注:これは 配列式 そして、control + shift + enterで入力する必要があります。





説明

この式の要点は、特定の範囲の行番号のリストを作成し、値を照合してから、MAX関数を使用して、最後に一致した値に対応する最大の行番号を取得することです。便宜上、名前付き範囲「names」を使用しています。

数式のこの部分は、裏返しに作業して、行番号の相対セットを生成します。



 
 ROW (names)- MIN ( ROW (names))+1

上記の式の結果は、次のような数値の配列になります。

Excelで回帰統計を取得する方法
 
{12345678}

表の8行に対応する8つの数値を取得していることに注意してください。見る このページ 数式のこの部分がどのように機能するかの詳細については。

この式では、次の行番号のみが必要です。 一致する値 、したがって、IF関数を使用して次のように値をフィルタリングします。

 
 IF (names=H5, ROW (names)- MIN ( ROW (names))+1)

これにより、次のような配列になります。

 
{1FALSEFALSE4FALSEFALSE7FALSE}

この配列にはまだ8つの項目が含まれていることに注意してください。ただし、名前付き範囲「names」の値が「amy」と等しい行番号のみが存続します(つまり、1、4、7)。配列内の他のすべての項目は、IF関数の論理テストに失敗したため、FALSEです。

最後に、IF関数はこの配列をMAX関数に配信します。 MAXは、配列の最大値である番号7を返します。これは、名前が「amy」である最後の行番号に対応します。最後に一致する行番号がわかれば、INDEXを使用してその位置の値を取得できます。

ピボットテーブルをExcelに挿入する方法

最後から2番目など。

最後から2番目、最後から3番目などを取得するには、次のようにMIN関数からLARGE関数に切り替えることができます。

 
{= LARGE ( IF (criteria, ROW (rng)- MIN ( ROW (rng))+1),k)}

ここで、kは「n番目に大きい」を表します。たとえば、上記の例で最後から2番目の一致を取得するには、次を使用できます。

 
{= LARGE ( IF (names=H5, ROW (names)- MIN ( ROW (names))+1),2)}

前と同じように、これは配列数式であり、control + shift + enterで入力する必要があります。

著者デイブブランズ


^