VLOOKUP函数就是一个十分好的应用函数,它主要是用来计算如奖金分配等工作的,为我们减少了很多的麻烦和一些不必要的错误,只要您的条件值是正确的,他保证能够让您得到准确无误的值,今后只要您的条件值有所改动,VLOOKUP函数马上就会更新您的所有值。好了,言归正传!
如果编号是21、22、23、24那么就不能得到奖金! 第一步我做了一个VLOOKUP函数,让奖金与编号挂钩,首先,看看我们的工资表是如何使用VLOOKUP函数的,见表(2)这是一个EXCEL数据表,它VLOOKUP需要一个主表[表(2)]和一个条件表[表(1)],将他们放在一张表内即可,例如SHEET1内的不同列中即可,我将主表放在A1:E7中,将条件表[表(1)]放在H和I列内,一切准备就绪后,我们就可以将VLOOKUP函数放在相应的单元格中了,即C列中从C2到C7,首先,选择单元格C2,然后我们点击工具条中的按钮,在"查找与引用"里找到"VLOOKUP"函数,点击确定即可,进入对话框后在: lookup_value内输入:B2 table_array内输入:H:I col_index_num内输入:2 range_lookup内输入:暂时不输入(空值)即近似匹配值,将在以下详细介绍。 确定后,单元格C2得到的公式为:"=VLOOKUP(B2,H:I,2)",直接在单元格中输入也是可以的! 这就是我要做的第二步,选用另两个函数,ISERROR和IF函数,ISERROR函数是一个测试错误的函数,它的语法是: ISERROR 值为任意错误值(#N/A、#VALUE!、#REF!、#DIV/0!、#NUM!、#NAME?或#NULL!)。如果您的测试值为错误的时候,当前得到的值为"TRUE",否则将为"FALSE"。 举例:如果有一个单元格"B9"是一个公式为:"=2/0"回车后,它将成为一个错误值即"#DIV/0!",用以告诉我们任何值不可以除零!在单元格"A9"内输入公式"=ISERROR(B9)"回车后"A9"的值为:"TRUE",表示测试结果是"真",如果再次改变"B9"的公式为:"=2/2"回车后给公式变为"1",我们会发现同时"A9"的值也发生了变化,变为:"FALSE"。 在本例中公式"VLOOKUP(B2,H:I,2)"相当于上例中的"B9"单元格,现在我们看看如下两个公式: ①"=ISERROR(VLOOKUP(B2,H:I,2))" ←近似匹配值②"=ISERROR(VLOOKUP(B2,H:I,2,FALSE))" ←精确匹配值上述两个公式,得到的值是不同的,即①得到的两个值(20和25)之间的值如21得到的是FLASE,这就与我们的特定值[表(1)]规定的"任何不在此编号内的数据都将视为不合格产品,不能给奖金!"产生了冲突,所以只能强制让公式得TRUE,即只能用②这个公式,让VLOOKUP函数精确匹配。这样C2和C3的值都为"TRUE"我们的目的就达到了! 最后一步就是使用IF函数,它显然是一个条件函数,语法 IF(logical_test,value_if_true,value_if_false)Logical_test 计算结果为TRUE或FALSE的任何数值或表达式。 Value_if_true Logical_test为TRUE时函数的返回值。 Value_if_false Logical_test为FALSE时函数的返回值。 "Logical_test"的值就是在第二步中,说的②精确匹配公式"Value_if_true"这个值添入:" "0" ",即值公式②的值等于TRUE时。 "Value_if_false"这个值添入:"VLOOKUP(B2,H:I,2) ",即值公式①的值等于FALSE时。 OK单元格"C2"最终的公式得到了,如下: "=IF(ISERROR(VLOOKUP(B2,H:I,2,FALSE)),"0",VLOOKUP(B2,H:I,2))"最后使用"自动填充"功能,向下拖动即可得到相应的数值,见[表(3)]
通过这个公式我们能够认识到EXCEL的强大数据处理能力,并由此让您对EXCEL的函数有进一步的了解,在实际工作中充分利用它的内置函数方便自己的工作! |