龙空技术网

Excel – 万万没想到,max 函数还能用于二维查询

Excel学习世界 382

前言:

现时兄弟们对“c语言中怎么用max函数”大约比较关怀,看官们都想要剖析一些“c语言中怎么用max函数”的相关知识。那么小编在网摘上搜集了一些关于“c语言中怎么用max函数””的相关内容,希望小伙伴们能喜欢,兄弟们一起来学习一下吧!

查询二维表交叉项,通常用得比较多的是 index+match 或 offset+match 组合公式,详情请参阅:

Excel 如何多条件查询?即同时查询行、列并返回值?Excel 二维表查询,不得不学会经典组合公式 offset+match

或者也可以用这个方法:

Excel – 直接输入列标题和行标题,就能查找出行列交叉处的数据

今天教大家一个意想不到的:用 max 函数也可以进行二维查询。对,你没看错,就是这个求最大值函数。

案例 1:

下图 1 为班级同学考试成绩,请根据姓名和学科,查找出行列交叉处的成绩,如下图 2 所示。

解决方案 1:

先制作下拉菜单。

1. 选中 I2 单元格 --> 选择菜单栏的“数据”-->“数据验证”

2. 在弹出的对话框中选择“设置”选项卡 --> 按以下方式设置 --> 点击“确定”按钮:

允许:选择“序列”来源:选择 A 列的姓名区域

3. 选中 J2 单元格 --> 选择菜单栏的“数据”-->“数据验证”

4. 在弹出的对话框中选择“设置”选项卡 --> 按同样的方式设置 --> 点击“确定”:

允许:选择“序列”来源:选择第一行的学科名称

接下来就根据下拉菜单的选项,查找分数。

5. 在 K2 单元格中输入以下公式 --> 按 Ctrl+Shift+Enter 回车:

=MAX((A2:A19=I2)*(B1:G1=J2)*B2:G19)

公式释义:

A2:A19=I2:判断 A2:A19 区域的每个单元格是否等于 I2,得出一组由 0 和 1 组成的数组,相等的就为 1B1:G1=J2:判断 B1:G1 区域的每个单元格是否等于 J2,同样得出一组由 0 和 1 组成的数组将上述两个数组相乘,都为 1 的相乘结果为 1,其他为 0;也就是只有行列交叉处的结果为 1...*B2:G19:将上述相乘后的数组乘以查找区域,1 和分数相乘为原来分数,其余的 0 与分数相乘结果都为 0MAX(...):提取出数组中的最大值,即不为 0 的值,就是行列交叉处的结果

从下拉菜单中重新选择姓名和学科,公式会自动查找出结果。

案例 2:

下图 1 左侧为员工的奖金提成,请根据身份证号码或姓名查找出提成。

效果如下图 2 所示。

解决方案 2:

1. 在 F2 单元格中输入以下公式 --> 按 Ctrl+Shift+Enter 回车 --> 下拉复制公式:

=MAX(($A$2:$B$16=E2)*$C$2:$C$16)

公式释义:

$A$2:$B$16=E2:判断 $A$2:$B$16 区域的每个单元格是否等于 E2,得出一组由 0 和 1 组成的数组...*$C$2:$C$16:将上述数组乘以 C 列的查找区域,只有与 1 相乘等于原来的值,其余结果都为 0MAX(...):提取出数组中的最大值,即非 0 值,就是最终的查询结果

* 请注意:公式中除 E2 要相对引用外,其余区域都必须绝对引用。

很多同学会觉得 Excel 单个案例讲解有些碎片化,初学者未必能完全理解和掌握。不少同学都希望有一套完整的图文教学,从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解 Excel 的各个知识点。

现在终于有了,以下专栏,从最基础的操作和概念讲起,用生动、有趣的案例带大家逐一掌握 Excel 的操作技巧、快捷键大全、函数公式、数据透视表、图表、打印技巧等……学完全本,你也能成为 Excel 高手。

标签: #c语言中怎么用max函数