WorksheetFunction.Rank_Eq(Double, Range, Object) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Returns the rank of a number in a list of numbers. The rank of a number is its size relative to other values in a list. (If you were to sort the list, the rank of the number would be its position.)
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
Parameters
- Arg1
- Double
Number - The number whose rank you want to find.
- Arg2
- Range
Ref - An array of, or a reference to, a list of numbers. Non-numeric values in reference are ignored.
- Arg3
- Object
Order - A number that specifies how to rank the number.
Returns
Remarks
If the order is 0 (zero) or omitted, Microsoft Excel ranks the number as if the reference was a list sorted in descending order.
If the order is any non-zero value, Microsoft Excel ranks the number as if the reference was a list sorted in ascending order.
Rank_Eq gives duplicate numbers the same rank. However, the presence of duplicate numbers affects the ranks of subsequent numbers. For example, in a list of integers sorted in ascending order, if the number 10 appears twice and has a rank of 5, then 11 would have a rank of 7 (no number would have a rank of 6).
For some purposes you might want to use a definition of rank that takes ties into account. In the previous example, you would want a revised rank of 5.5 for the number 10. To do this, add the following correction factor to the value returned by Rank_Eq. This correction factor is appropriate both for the case where rank is computed in descending order (order = 0 or omitted) or ascending order (order = nonzero value).
Correction factor for tied ranks=[COUNT(ref) + 1 – RANK_EQ(number, ref, 0) – RANK_EQ(number, ref, 1)]/2.In the following example, RANK_EQ(A2,A1:A5,1) equals 3. The correction factor is (5 + 1 – 2 – 3)/2 = 0.5 and the revised rank that takes ties into account is 3 + 0.5 = 3.5. If number occurs only once in ref, the correction factor will be 0, since Rank_Eq would not have to be adjusted for a tie.