引子:名次是他一个个敲上去的,第二天数据一改,全废了
做销售内勤的老周,月初他把五十个人的业绩放进一份在线表格,按降序排了一遍,看着顺眼,就在旁边那一列手动敲了 1 到 50。表发出去之后,同事把两个人的业绩改了一下,名次那一列纹丝不动——表面上第 3 名还是第 3 名,实际上他已经是第 5 名了。这件事直到月底对账才被发现。
第二个月他学乖了,改用出名的做法:让名次自动算。新的问题又来了。表里有两个 95 分,两行都显示第 3 名,往下直接跳到第 5 名,领导指着一个空格问他:「第 4 名呢?」
这两件事都跟「哪个版本能不能算」没关系。WPS 表格本身能做到的事,电脑版和在线版都能做到,函数体系也是同一套。真正让人卡住的是另外几件没人提前告诉他的事:你要的到底是在旁边多出一列名次,还是把整张表的行序换掉;这名次要不要跟着数据自己变;以及这张表还有没有别人在看。
所以这篇不谈版本优劣,只做一件事:把同一件「排名」的事,在电脑版和在线版上各走一遍。先把几种做法切开,再看两端的差别落在哪儿,然后是两端各自的操作步骤、并列名次的处理办法,最后是一份排完之后的验收清单——其中有一项检查,是只有做过跨端对比的人才会想到去做。
先切开一件事:你说的「排名」是哪一种
「排名」这个词在日常说法里至少压着四种不同的做法,而它们在你手上的动作、以及数据一改会发生什么,完全不同。
这张表最想纠正的,是「看一眼谁排在前」和「留一份名次给人看」这两件事的混淆。很多人说「我要排名」,其实想要的是排序;排完看着挺好,第二天数据变了,顺序还停留在昨天,人就以为软件不好用。排序改的是顺序,名次列改的是信息——顺序是一次性的,信息是要留下来被别人看的。
落到一句话上:排名这件事的难点从来不在把名次算出来,而在算出来的名次能不能跟着数据自己变。
同一件事,两端的差别落在哪儿
先说清楚一件事:能不能用函数、有没有排序按钮,这两端是一样的,别在这里纠结。真正的差别集中在下面这张表里,而其中只有一部分会改变你的做法。
表里「数据放在哪」「算在哪」「表格能力」这几行属于「知道就行,不影响你怎么做」;真正会改变你做法的,是排序这个动作会牵动谁那一行。在电脑版上排序,是私事——你把行顺序调完,发给别人的文件里是什么顺序,由你保存的那一版决定。在网页端上排序,是公开动作——你和别人看的是同一份文档,你挪了行,对方屏幕上的顺序也跟着变,而且这种改动通常不会有人通知他。
所以在线版做排名有一条几乎不会被写进攻略的规矩:要排序之前,先问一句这张表现在有没有别人在看。 如果有人正在同一份表里填数据,排序会把他的定位打乱,甚至让他在错行里继续录。这种情况下的正确顺序是反过来的:先出名次列、再谈排序——名次是新增的信息,不动别人的行;排序才是那个会动到别人的动作。
还要补一句诚实的话:这几个版本之间一直在互相追平,今天某一端缺的入口,下个版本可能就有了。所以本文里所有入口都写成「按关键词去找」,不写死菜单层级和位置。
电脑版:排名怎么做,一次走完
下面这张表把电脑版上的几种做法并排放在一起。三列分别是:你要做的事、按什么关键词去找、以及看到什么才算做成了。
「排序」那一行的确认点最容易被跳过。范围选错是排序最常见的事故:只选了数据没选表头,或者把表头也框了进去,排完之后表头那一行变成了一条数据,「姓名」被挤到了别人后面。排之前先让表头那一行待在顶上,排完先看它还是不是字段名,两秒钟的事,能省掉一次撤销。
「要留一列名次」那一行,则是这篇最想让人记住的。名次列之所以能「跟着数据自己变」,靠的是一个很小的机制:公式里参与比较的那个区域必须锁住。不锁的话,你把公式往下拖一格,第二个人那一行参与比较的范围就跟着挪了一格——从「和所有人比」变成「和下面那些人比」,于是名次看起来全是 1,或者忽高忽低。锁区域的办法就是在行列号前面加一个符号(多数表格软件里都是那个 $,键盘上按 F4 这类键也可以切换,具体按键按你界面上的提示来),写成 $B$2:$B$51 这种样子。
这里要留一句余地:WPS 表格里这个函数在不同版本里可能显示成 RANK、RANK.EQ、RANK.AVG 这类同族的几个写法,功能取向略有不同(比如并列时给不给平均名次)。按你界面上搜得到的那一个用,上面这条机制对它们都成立。
在线版:同一件事,步骤哪里不一样
在线版的入口位置和电脑版并不总是逐字一致,所以下面同样只写「按什么关键词找」,把重点放在两端真正不同的地方。
在线版做排名真正的好处,集中在「发给别人看」那一行:「你更新的那一次,就是所有人看到的那一次」。名次这种东西最怕版本分叉——三个人手上有三份表,三份名次不一样,开会时谁也说不清。如果这张表的名次是给别人看的,在线版省掉的是整条传递链。
要付出的代价也在同一张表里:因为每一步都在保存,改错了没有一个「干脆不保存」的退路。习惯在电脑版上先折腾、想好了再存的人,切到在线版要有意识地把动作放慢一档,或者干脆先复制一份副本再动手,试完把副本删掉。
最后再说一条体感上的差别,说清它的原因比直接下结论更有用:同一份表格、同样的行数,在浏览器里排序的等待感通常比客户端更明显,尤其数据行数大、而且同时还有别人在编辑这份文档的时候。这不是功能缺失,而是算力位置不同——一端在你自己这台机器上,另一端要先送到远端、算完再送回来。
并列名次:两端都会遇到的同一个问题
并列名次是这类表格里最容易被当成故障的现象,而它两端一模一样。下面这些是实际最常遇到的。
跳号那一行是重点。它不是错误,是口径问题:跳号的做法回答的是「有多少人比你强」,连号的做法回答的是「你排在第几个位置」。 你要哪一种,取决于这张表是拿去排名次,还是拿去发编号。想清楚了,再决定用哪个写法,而不是看到跳号就去改数据。
分组排名:一张表里好几个榜
一张表里同时有多个班级、多个部门、多个片区各排各的,是排名最容易出问题的地方——因为一旦写错,错得很隐蔽:每个人都能看到一个名次,就是那个名次不是他想要的。
验收的办法很直接:数一遍「名次为 1 的行」有几行。你心里有几个组,就应该有几个第 1 名。差一个,说明有一组的范围串了。
排完之后:一份三分钟验收清单
「换一端打开是不是一样」那一行,是这份清单里唯一需要跨端才能做的检查,也是这篇想留下的一个动作。排名结果对不对,光在一端看是看不出来的——因为它看起来永远是对的。把它存到云端,用另一端打开对一遍,是成本最低的一次交叉验证。
该用哪一端做排名:三种情况,三个答案
这三行不是版本优劣,而是回答同一个问题:这张表要不要给别人看。 要,就选那个「更新一次所有人都同步」的方式;不要,就用那个「算在自己机器上」的方式。两件事都想占,就走「电脑版做,做完存到云端」那一行——先在本机把它算对,再挂到云端去给人看。
常见问题速答(FAQ)
Q:WPS 在线版的表格能用排名函数吗? 能。两端用的是同一套表格内核与函数体系,名次、排序、分组计数这些做法在网页端上同样成立。差别不在有没有这个能力,而在数据放在哪、以及你的改动会不会影响别人。
Q:排序和排名有什么区别,我一直当成一回事。 排序是改顺序,排名是出信息。排完之后表里没有留下任何「名次」的记录,数据一变,顺序还停在昨天;出了名次列,名次才会跟着数据自己更新。如果你要给的不只是「看一眼」,就用名次列。
Q:排名公式往下拉之后名次全乱了,是公式写错了吗? 多数时候不是写错,而是没锁住参与比较的区域。范围没锁,往下拖一格,比较范围就跟着挪一格,于是每个人比较的对象都变了。回到第一个人的那一行把区域改成绝对引用,再往下拖就正常了。
Q:并列的名次怎么才能不跳号? 换口径。默认那种写法回答的是「有多少人比你强」,所以两个第 3 名之后是第 5 名;想要连续编号,就用条件计数数出比你大的有几个再加 1。两种都合法,取决于这张表是排名次还是发编号。
Q:我在浏览器里排了序,别人看到的是我排完的样子吗? 是。在线版里你和别人看的是同一份文档,排序动的是文档本身,对方刷新就会看到新顺序,而且通常不会有提示。所以在一份有人在同时填写的表上排序前,先想清楚这一步会不会打乱别人手上的动作——更稳的顺序是先出名次列,再谈排序。
Q:电脑版和在线版打开同一份表格,名次显示不一样,是坏了吗? 先别怀疑软件。多数情况是两份东西根本不是同一份:本机那一份改完没存到云端,或者你改的其实是网页端上的另一个副本。核对一下文件名和最后修改时间,比重新排一遍快得多。
Q:这篇和我之前看到的《WPS电脑版和网页版区别》有什么不同? 那一篇比的是「一整台电脑和一个浏览器」在安装、功能、性能、离线、协作、成本这些层面的全面差异,用途是帮你做选择;本篇只把「排名」这一件事在两端各走一遍,包括两端都没解决的并列名次问题,用途是让你今天就能动手把名次做出来。两篇一起看,选择和执行就都齐了。
结语:排名只是个动作,选哪一端才是那个问题
回头看老周那两次翻车,其实都不在软件上。第一次他做的不是排名,是排序加手抄,所以数据一变全作废;第二次他做对了,只是用了一个回答「有多少人比你强」的口径,去回答一个「我排第几」的问题。
把这两件事拆开,顺序其实很清楚:先决定这张名次要不要给别人看,再决定用电脑版还是在线版;先出名次列,再谈要不要排序;先锁住参与比较的区域,再往下拖。 每一步都在把「一次性的动作」变成「设一次就长期成立的东西」。
留给你的那把尺子只有一个动作:随手改一个数,看名次会不会自己变。 会变,说明你做的是排名;不会变,说明你只是抄了一份昨天的顺序。
一句话总结:WPS 电脑版和在线版在排名这件事上的差别,不在能不能算,而在数据在哪、排序这个动作会牵动谁、以及你看到的那一版是不是别人也看到的那一版——所以先决定这张名次要不要给别人看,再选端;先出名次列,再谈排序;最后用「改一个数看名次会不会自己变」来验收。