【APD-122】Wニューハーフ りん&美樹 谁说团结单位格很粗陋,平直拉黑!
送东说念主玫瑰,手过剩香,请将著述共享给更多一又友
早先操作是郑重掌持EXCEL的最快捷阶梯!
欧美性爱电影【置顶公众号】或者【设为星标】实时袭取更新不迷途
图片
小伙伴们好,今天来和世界共享一说念烧脑的排序题目。说这说念题目难,是因为它包含有团结单位格,何况,要以团结单位格为分组,进行组内排序。
今天先容的的这两种措施,是处治这类题指标两个常用本领和技巧。此类型题目在每每责任中也庸碌会碰到,有心的小伙伴们可要保藏好喽!
原题是这式样的:
图片
将左侧的源数据按分组进行由大到小排序。一又友们有什么好的措施吗?
01按组排序
所谓按组排序,即是按照小组别离来排序,先排第一组,再模范排序后头的小组。
图片
在单位格H2中输入下列公式,三键回车并向下向右拖曳即可。
=INDEX(C$2:C$13,MOD(MAX(((LOOKUP(ROW($A$2:$A$13),ROW($A$2:$A$13)/($B$2:$B$13<>""))*(1-COUNTIF($H$1:H1,$C$2:$C$13)))/1%%%+$D$2:$D$13/1%+ROW($D$2:$D$13))*(LOOKUP(ROW($B$2:$B$13),ROW($B$2:$B$13)/($B$2:$B$13<>""),$B$2:$B$13)=LOOKUP("座",$B$2:$B2))),100)-1)
公式比较长,咱们底下一齐来领悟一下。
想路:
LOOKUP(ROW($A$2:$A$13),ROW($A$2:$A$13)/($B$2:$B$13<>""))部分,这里使用的LOOKUP函数的一个常用技巧,指标是要用行标来填充空缺的单位格。公式的成果为{2;2;2;5;5;5;8;8;8;8;12;12}
(1-COUNTIF($H$1:H1,$C$2:$C$13))部分,指标是将在H列中照旧索取到的数据从源数据中屏蔽掉,幸免其再次被索取。这么作念的原因咱们后头再证明
接下来咱们运转加权处理。上头两部分的成果相乘,并扩大1百万倍;同期将D列的数据扩大1百倍。这两者相加后再加上对应的行号。这部分的成果是{2086302;2094503;2060704;5072105;5080906;5002607;8019108;8010909;8024110;8013711;12006412;12081813}
接下来咱们看条目。
LOOKUP(ROW($B$2:$B$13),ROW($B$2:$B$13)/($B$2:$B$13<>""),$B$2:$B$13)部分,和上头先容的一样,运用LOOKUP函数用小组名来填充空缺单位格。其成果为{"第一组";"第一组";"第一组";"第二组";"第二组";"第二组";"第三组";"第三组";"第三组";"第三组";"第四组";"第四组"}
LOOKUP("座",$B$2:$B2)部分,跟着公式向下拖曳,它模范会复返第一组、第二组、第三组和第四组。这亦然运用的LOOKUP函数的特质,“座”字在EXCEL中是一个比较大的汉字,在一个区域内查找“座”,要是查找不到,会复返其找到的终末一个字符
这两部分比较较,即是条目,它细则了小组排序的畛域。其成果为{TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE},前三个TRUE就代表了是第一小组
上头总共这些加权和条目乘在一齐,成果如下{2086302;2094503;2060704;0;0;0;0;0;0;0;0;0},你看,非0部分即是第一小组的数据
运用MAX函数索取到最大值。这里不成用LARGE函数。因为LARGE函数有第二参数,第二参数跟着公式向下拖曳会按当然数序列增长。而咱们小组排序时每个小组齐要按第一、第二、第三来索取数据的,因此这里不成使用LARGE函数。而要使用MAX函数,就要确保小组的每一个数值齐有契机当上最大值。因此就需要借助(1-COUNTIF($H$1:H1,$C$2:$C$13))来处理。在第二行时,COUNTIF函数的查找畛域是$H$1:H1,查找的成果是{0;0;0;0;0;0;0;0;0;0;0;0},1减去自后得回的成果是{1;1;1;1;1;1;1;1;1;1;1;1},相乘后示意选取全部的源数据,最终MAX函数取最大值前的畛域是{2086302;2094503;2060704;0;0;0;0;0;0;0;0;0},取出的最大值是2094503;当公式拖曳到第三行时,COUNTIF函数的查找畛域就酿成了$H$1:H2,在这个畛域内照旧包含了第一个查找值“韩雪琳”,因此COUNTIF函数的成果即是{0;1;0;0;0;0;0;0;0;0;0;0},示意源数据中第二行的“韩雪琳”被找到。1减去自后得回的成果是{1;0;1;1;1;1;1;1;1;1;1;1},示意源数据中除第二行外,其余齐不错选取。最终MAX函数取最大值前的畛域是{2086302;94503;2060704;0;0;0;0;0;0;0;0;0},取出的最大值即是2086302
取到最值后,再运用MOD函数对100求余,得回了行号,终末再运用INDEX函数复返正确谜底
02全体排序
这种措施,咱们不去计划团结单位格了,只看D列的数据。相似,也需要进行加权处理。
图片
首选选中单位格区域H2:H13,并输入下列公式,三键回车说明。
=INDEX(C$2:C$13,MATCH(LARGE((9-SUBTOTAL(3,OFFSET($B2,,,ROW($1:$12))))/1%%+$D2:$D13,ROW($1:$12)),(9-SUBTOTAL(3,OFFSET($B2,,,ROW($1:$12))))/1%%+$D2:$D13,))
想路:
SUBTOTAL(3,OFFSET($B2,,,ROW($1:$12)))部分,以单位格B2为基点向下偏移,偏移后的行高别离是1、2、…、12行,再运用SUBTOTAL函数统计非空单位格个数。其运算成果为{1;1;1;2;2;2;3;3;3;3;4;4}
9-SUBTOTAL(3,OFFSET($B2,,,ROW($1:$12)))部分,是这说念题指标要道。它完了的大小的逆序,成果为{8;8;8;7;7;7;6;6;6;6;5;5}
(9-SUBTOTAL(3,OFFSET($B2,,,ROW($1:$12))))/1%%+$D2:$D13部分,扩大1万倍后,在加上D列的数值。这么就确保了所稀有据当先是按照第一组、第二组、第三组和第四组的轨则来陈设。其成果为{80863;80945;80607;70721;70809;70026;60191;60109;60241;60137;50064;50818},你看,前三个数据齐是第一小组的,可是还莫得排序
LARGE((9-SUBTOTAL(3,OFFSET($B2,,,ROW($1:$12))))/1%%+$D2:$D13,ROW($1:$12))部分,运用LARGE函数按照从大到小的轨则陈设,其成果为{80945;80863;80607;70809;70721;70026;60241;60191;60137;60109;50818;50064}。你看,前三个数据齐是第一小组的,而且也按照从大到小陈设了
接下来,运用MATCH函数来查找LARGE函数这部分红果中的每个数据在(9-SUBTOTAL(3,OFFSET($B2,,,ROW($1:$12))))/1%%+$D2:$D13这部分中的位置。其成果为{2;1;3;5;4;6;9;7;10;8;12;11}
终末,得回位置信息后,运用INDEX函数复返正确谜底。
03底下这条函数亦然全体排序,相似亦然区域数组公式。它不错看作念是上头第二个公式的纠正版。
图片
一又友们,这条公式你们概况看懂吗?
本期本体造就文献索取样式:
连系:https://pan.baidu.com/s/1Q0Joi9Ik-niBfOrmP1Za3w?pwd=rm8p
索取码:rm8p
好了一又友们,今天和世界共享的本体即是这些了!心爱我的著述请共享、转发、点赞和保藏吧!如有任何问题不错随时私信我哦!-END-
长按下方二维码和蔼EXCEL应用之家
靠近EXCEL操作问题时不再迷濛无助
我就知说念你“在看”
推选阅读变短的下拉清单
依据要道字动态变更下拉清单,你会制作吗?
函数组合中有好多固定搭配,而这一组尤为着名!
【SHIFT】键,想说懂你辞让易!
两种措施破解终点要求的数字索取汇总【APD-122】Wニューハーフ りん&美樹,齐挺好用的!
本站仅提供存储作事,总共本体均由用户发布,如发现存害或侵权本体,请点击举报。