如何让数据表自动排序?升序或降序,点一下选项它就自动排了,不用每次都菜单设置。
听上去要动用 VBA 了?没错 VBA 的确是个很好的办法,但是很多人不是怵吗,那我就教个公式法,也能实现这效果。
案例:
下图 1 是公司销售人员的获客统计表,请制作一个定义排序规则的下拉菜单,一点就能按要求自动排序。
效果如下图 2 所示。
解决方案:
1. 先把目标区域和下拉菜单的样式搭建好。
2. 选中 G2 单元格 --u0026gt; 选择菜单栏的“数据”--u0026gt;“数据验证”--u0026gt;“数据验证”
3. 在弹出的对话框中选择“设置”选项卡,按以下方式设置 --u0026gt; 点击“确定”:
- 允许:选择“序列”
- 来源:输入“升序,降序”
下拉菜单已经设置完成。
4. 在 E2 单元格中输入以下公式:
=IF($G$2="升序",SMALL($B$2:$B$14,ROW(A1)),LARGE($B$2:$B$14,ROW(A1)))
公式释义:
- SMALL($B$2:$B$14,ROW(A1)):选出区域 $B$2:$B$14 中第 ROW(A1) 小的单元格;随着公式下拉,ROW(A1) 会逐行递增,从而实现从小到大排序;
- LARGE($B$2:$B$14,ROW(A1)):选出区域 $B$2:$B$14 中第 ROW(A1) 大的单元格;
- if(...):根据下拉菜单的文字,分别执行升序或降序排列
5. 将 C 列设置为第一个辅助列,在 C2 单元格中输入以下公式:
=B2u0026COUNTIF($B$2:B2,B2)
公式释义:
- COUNTIF($B$2:B2,B2):统计从 B2 开始到当前行,B2 单元格总共出现了几次
- B2$...:将 B2 及其出现的次数连接起来,从而变成一个唯一值;这样即使获客数有重复,也能匹配到不同的姓名
6. 将 F 列设置为第二个辅助列,在 F2 单元格中输入以下公式:
=E2u0026COUNTIF($E$2:E2,E2)
公式释义同上。
7. 在 D2 单元格中输入以下公式:
=INDEX(A:A,MATCH(F2,C:C,0))
公式释义:
- MATCH(F2,C:C,0):找出 F2 在 C 列序列中出现的位置顺序,是一个数值;
- INDEX(A:A,...):匹配出 A 列中对应位置的值
8. 选中 C2:F2 区域向下拖动,从而复制公式。
9. 将 C 和 F 列的字体设置为白色。
现在选择下拉菜单的选项,第二个数据表就会自动根据要求排序。
接下来我们再加上数据条,这样可以使得数据差距更加可视化。
10. 选中 E2:E14 区域 --u0026gt; 选择菜单栏的“开始”--u0026gt;“条件格式”--u0026gt;“数据条”--u0026gt; 选择所需的数据条样式
这是选择下拉菜单的动态效果。
很多同学会觉得 Excel 单个案例讲解有些碎片化,初学者未必能完全理解和掌握。不少同学都希望有一套完整的图文教学,从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解 Excel 的各个知识点。
现在终于有了,以下专栏,从最基础的操作和概念讲起,用生动、有趣的案例带大家逐一掌握 Excel 的操作技巧、快捷键大全、函数公式、数据透视表、图表、打印技巧等……学完全本,你也能成为 Excel 高手。
本文到此结束,希望对大家有所帮助。
点击排行
-
1
2000左右的二手笔记本电脑推荐(2000左右二手笔记本推荐2020)
上升 - 2 上升
- 3 上升
- 4 上升
- 5 上升
- 6 上升
- 7 上升
-
8
苹果不可用了怎么解开手机(苹果不可用了怎么解开手机爱思助手)
上升 - 9 上升
- 10 上升