图7.61所示为各产品单值,图7.62所示的日产量表需要计算每个产品的产值,产值等于产量乘以单价,有什么办法让公式自动搜索当前产品对应的单价,避免人工查找单价,既耗时又易出错?
图7.61 单价表
图7.62 产值表
解题步骤
根据品名从单价表中引用对应的单价,最简便的方法是使用VLOOKUP函数引用目标,操作步骤如下。
1.选择E2单元格,并输入以下公式(见图7.63):
要注意公式中第二参数是绝对引用,第一参数是相对引用。
图7.63 计算引用第一个产品的产值
2.双击E2单元格的填充柄,将公式向下填充,从而计算出所有产品的产值。
知识扩展
1.VLOOKUP 函数用于从列表左侧查找数据,找到后返回右边某列中对应位置的值。在本例中,VLOOKUP函数用于从单价表A2:B10区域的左边一列A2:A10中查找品名,当找到品名后,返回第2列中对应位置的单价。
2.VLOOKUP函数的语法如下:
其中第一参数代表要查找的值,本例中是品名;第二参数是要在其中查找的一个列表,它既可以是区域也可以是数组,本例中是单价表中的A2:B10区域;第三参数代表列数,即返回值位于列表中的第几列,必须是大于等于1、小于等于总列数的整数值;第四参数代表匹配方式,当赋值为False时表示精确匹配,赋值为True时表示糊模匹配,本例采用的是前者。
也可以用以下语句来说明VLOOKUP函数的语法:
VLOOKUP (要查什么,在哪里找,返回第几列的,[查找方式])
3.由于本例的公式需要向下填充,从而一次性引用所有产品的单价,因此公式的第二参数“单价表!$A$2:$B$10”需要采用绝对引用,否则可能查找不到单价。
VLOOKUP的第一参数是品名,在填充公式时需要它不断变化,因此只能采用相对引用方式。
4.为了避免查找出错,在书写品名时必须确保产量表中的品名与单价表中的品名一致,有任何差异就可能查找失败,从而产生错误值。例如,在产量表中将“一字刀”写成了“一字力”,再或者在“刀”右方多了一个空格,都会导致公式结果为错误值。