是否可以使用条件(例如“ SORTIF()
”函数)列出从最大到最小的项目?我列出了许多不同的产品 . 我想列出每种产品从每天最大到最小的订单 . 我已经列出了我的列表应该是什么样子的一小部分样本:
1/8 Drill Bits 11 48
1/8 Drill Bits 12 24
1/8 Drill Bits 48 12
1/8 Drill Bits 24 12
1/8 Drill Bits 12 11
1/8 X 6 Drill Bits 12 12
1/8 X 6 Drill Bits 8 12
1/8 X 6 Drill Bits 12 12
1/8 X 6 Drill Bits 4 11
1/8 X 6 Drill Bits 12 8
9/64 X 6 Drill Bit 11 4
DB1/2 Deburring Tool 1 1
5/32 Drill Bits 1 1
3/16 Drill Bits 12 72
3/16 Drill Bits 72 60
3/16 Drill Bits 60 12
我想输入一个公式,列出每个产品的订单,从上到下的第三列,从最大到最小 . 请记住,这是一个包含数千行的大型电子表格,因此我需要能够填写 .
2 回答
试试这个,假设你的值在单元格A2和B2中开始并从那里向下移动:
然后将这些填写在您的条目旁边 . 如果您的条目位于工作表上的其他位置,请相应地将所有公式向下移动 .
这是发生的事情:
C列中的单元格检查它们是否是新组的开头;如果是这样,他们重新启动该组的行计数器;如果没有,他们将1添加到前一行的行计数器中 .
D列中的单元格检查它们是否是组的结尾;如果是这样,他们使用当前行的行计数器(即组长度);如果没有,它们将从下面的行继承组长度(在组中更下方) .
E列中的单元格使用OFFSET函数创建一个引用当前组中单元格的范围 . 然后,他们使用LARGE()函数从该范围中选择第n个最大的条目,其中n是组中当前行的位置 .
我假设您只对基于A列中的值创建已排序组感兴趣,并且您始终希望在该值更改时开始新组 . 如果您需要基于多个列(例如,日期和产品列)创建新组,则可以在单元格C2中使用
AND(A2=A1, B2=B1)
而不是A1=A1
,以及在单元格D2中使用类似的内容 . 我提到这个,即使没有显示日期,因为你说你"want to list the orders per day from largest to smallest for each product" .您可以选择所有数据(也包括 Headers ),然后转到主页 - >查找和过滤(在编辑部分内) .
您可以使用选项自定义排序,当对话框显示时,您可以选择要使用的列以及desc或asc .
可能对您有帮助的另一个选项是在主页中过滤 - >查找和过滤(在编辑部分内)这将向列 Headers 添加按钮,您可以在其中设置排序并过滤 .
希望这可以帮助 . :)