祖国山川颂(节选)短文:EXCEL中有没有这样的函数?

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 05:31:26
有两列数据,B列是数据,我想在A列中使用一个函数,例如:判断B1在整个B列中的大小位次,如是是最大,就在A1中返回数值1,b2如果在整个B列第20位,就在A2中返回数值20.

如果B列中已有数据,你在A1中输入“=RANK(B1,B:B,0)”即可.如果只想找出B1在B1到B30中的位次,可输入"=RANK(b1,B1:B30,0)”,如果你还想排出所有B列中的数在B1-B30中的名次,在A1中输完公式“=RANK(B1,$B1:$B30,0)”后将光标放在A1右出角呈现“+”时按住左键向下拖动或双击即可。

RANK

返回一个数字在数字列表中的排位。数字的排位是其大小与列表中其他值的比值(如果列表已排过序,则数字的排位就是它当前的位置)。

语法

RANK(number,ref,order)

Number 为需要找到排位的数字。

Ref 为数字列表数组或对数字列表的引用。Ref 中的非数值型参数将被忽略。

Order 为一数字,指明排位的方式。

如果 order 为 0(零)或省略,Microsoft Excel 对数字的排位是基于 ref 为按照降序排列的列表。
如果 order 不为零,Microsoft Excel 对数字的排位是基于 ref 为按照升序排列的列表。
说明

函数 RANK 对重复数的排位相同。但重复数的存在将影响后续数值的排位。例如,在一列按升序排列的整数中,如果整数 10 出现两次,其排位为 5,则 11 的排位为 7(没有排位为 6 的数值)。

由于某些原因,用户可能使用考虑重复数字的排位定义。在前面的示例中,用户可能要将整数 10 的排位改为 5.5。这可通过将下列修正因素添加到按排位返回的值来实现。该修正因素对于按照升序计算排位(顺序 = 非零值)或按照降序计算排位(顺序 = 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 出现一次,由于不必调整 RANK,因此修正因素为 0。

楼上回答正确,就是使用RANK排名次函数。
但是如果你不想改变原来数据的顺序,可以增加一辅助列,填充1,2,3,4,5……,排名次后利用辅助列恢复原数据的顺序。这样才能可以实现你的目的:如是b1是最大,就在A1中返回数值1,b2如果在整个B列第20位,就在A2中返回数值20了.