Excel中怎么将几个区域的数值按升序排列到一列?

 我来答
我来也xsczd
科技发烧友

2017-05-06 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:1.2万
采纳率:66%
帮助的人:2052万
展开全部

一、原理:在数据区域中从小到大排序,依次求出第K个小的数值。

二、操作:在D下面的F3单元格输入公式:=IFERROR(SMALL($B$4:$D$7,ROW(A1)),0),复制并下拉。

三、操作可参见图附件。

退休画线工
2016-11-19 · 知道合伙人软件行家
退休画线工
知道合伙人软件行家
采纳数:5412 获赞数:27030
1981年毕业于湖南大学,从事化工设计30多年,精于工程设计

向TA提问 私信TA
展开全部
比如数字在A1:C21中,且可能有空白单元格,在D列得到排序数据,可在D2中输入公式:
=IF(ROW()>COUNT($A$2:$C$21)+1,"",SMALL($A$2:$C$21,ROW(1:1)))
下拉到出现空白单元格。
追问

如果几个区域不是相连的呢?比如我想将B、I、P三列按大小排列

追答
为什么开始提问不把实际问题提出来呢?现在的问题和提问的问题还是一个问题吗?且补充的截图左边的行号只截一半,写公式中要用到行号时还要去数。
公式:
=SMALL(OFFSET($B$6:$B$45,,(COLUMN(A:C)-1)*7,,3),ROW(1:1))
同时按Ctrl+Shift+Enter三键输入数组公式,下拉到出现错误数据。
本想在最外层加上IFEEROR函数进行消错处理的,即当数据个数超出要提取的数据个数时显示为空:
=IFERROR(SMALL(OFFSET($B$6:$B$45,,(COLUMN(A:C)-1)*7,,3),ROW(1:1)),"")
但加上后,提示Excel资源不足,无法完成公式计算。而这个公式其实应该没有太要占资源,什么原因,暂时没弄明白。你不妨两个公式都试试下,看第二个公式是否出现同样的问题。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阳光上的桥
2016-11-19 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21423 获赞数:65812
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部
操作方法:
复制到一列再点排序
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式