WorksheetFunction.Rank メソッド (Excel)

数値のリストの中で、指定した数値の順位を返します。 数値の順位は、リスト内の他の値との相対的な位置になります。 リストを並べ替える場合、数値のランクはその位置になります。

重要

この関数は 1 つ以上の新しい関数に置き換えられました。この関数は、精度が向上し、その名前が使用法をより適切に反映する可能性があります。 この関数は旧バージョンの Excel で引き続き利用可能ですが、 下位互換性を確保する必要がない場合には、機能をより正確に表わす新しい関数を今後使用することをご検討ください。

新しい関数の詳細については、 Rank_Eq メソッドと Rank_Avg メソッドに関するページを参照してください。

構文

Rank (Arg1Arg2Arg3)

: WorksheetFunction オブジェクトを表す変数。

パラメーター

名前 必須 / オプション データ型 説明
Arg1 必須 Double 数値: 範囲内での順位 (位置) を調べる数値を指定します。
Arg2 必須 Range Ref: 数値のリストの配列またはリストへの参照。 Ref に含まれる数値以外の値は無視されます。
Arg3 省略可能 バリアント型 (Variant) 順序: 数値の順位を決めるため、Ref 内の数値を並べ替える方法を指定します。

戻り値

Double

注釈

順序に 0 を指定するか、順序を省略すると、範囲内の数値が ... 3、2、1 のように降順に並べ替えられます。

order が 0 以外の値の場合、Excel は、ref が昇順で並べ替えられたリストであるかのように数値をランク付けします。

Rank は重複する数値に同じランクを与えます。 数値が重複していると、それ以降の数値の順位がずれていきます。 たとえば、昇順で並べ替えられた整数の一覧で、数値 10 が 2 回表示され、ランクが 5 の場合、11 のランクは 7 になります (ランクが 6 の数値はありません)。

一部の目的では、関係を考慮するランクの定義を使用する必要がある場合があります。 前の例では、数値 10 のランクを 5.5 に変更する必要があります。 これを行うには、Rank によって返される値に次の補正係数を追加 します。 この補正因子は、順位を降順 (順序に 0 を指定するか、省略した場合) または昇順 (順序に 0 以外の数値を指定した場合) のどちらで計算する場合にも使用できます。

  • 関連付けられたランクの修正係数 =[COUNT(ref) + 1 – RANK(number, ref, 0) – RANK(number, ref, 1)]/2.

  • 次の例では、RANK(A2,A1:A5,1) は 3 になります。 補正係数は (5 + 1 – 2 – 3)/2 = 0.5 で、関係を考慮する変更されたランクは 3 + 0.5 = 3.5 です。

  • 数値が ref で 1 回だけ発生した場合、 ランク を同点に合わせる必要がないため、修正係数は 0 になります。

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。