WorksheetFunction.Rank_Eq(Double, Range, Object) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
数値のリストの中で、指定した数値の順位を返します。 数値の順位は、リスト内の他の値との相対的な位置になります。 (リストの数値の順序を並べ替えても、指定した数値の順位は変わりません)。
public double Rank_Eq(double Arg1, Microsoft.Office.Interop.Excel.Range Arg2, object Arg3);
Public Function Rank_Eq (Arg1 As Double, Arg2 As Range, Optional Arg3 As Object) As Double
パラメーター
- Arg1
- Double
数値: 範囲内での順位 (位置) を調べる数値を指定します。
- Arg2
- Range
Ref - 数値のリストの配列または参照。 参照の数値以外の値は無視されます。
- Arg3
- Object
順序: 数値の順位を決めるため、範囲内の数値を並べ替える方法を指定します。
返品
注釈
順序に 0 を指定するか、順序を省略すると、範囲内の数値が ... 3、2、1 のように降順に並べ替えられます。
順序に 0 以外の数値を指定すると、範囲内の数値が 1、2、3, ... のように昇順で並べ替えられます。
Rank_Eq は、重複する数値に同じ順位を与えます。 数値が重複していると、それ以降の数値の順位がずれていきます。 たとえば、昇順に並べられた整数のリストがあり、そのリストに 10 が 2 度現れ、その順位が 5 であるとき、11 の順位は 7 となります (順位が 6 の数値はありません)。
いくつかの目的では、同点を考慮に入れたランクの定義を使用できます。 前の例では、数値 10 の修正されたランクを 5.5 にする必要があります。 これを行うには、 Rank_Eqによって返される値に次の補正係数を追加します。 この補正因子は、順位を降順 (順序に 0 を指定するか、省略した場合) または昇順 (順序に 0 以外の数値を指定した場合) のどちらで計算する場合にも使用できます。
同じ順位の補正係数=[COUNT(ref) + 1 – RANK_EQ(number, ref, 0) – RANK_EQ(number, ref, 1)]/2。次の例では、RANK_EQ(A2,A1:A5,1) は 3 に等しくなります。 補正係数は (5 + 1 – 2 – 3)/2 = 0.5 で、同点を考慮した修正ランクは 3 + 0.5 = 3.5 です。 数値が参照内で 1 回のみ指定されている場合、同点の場合に Rank_Eq を調整する必要がないため、補正係数は 0 になります。