Excel问题如何统计有内容的单
应用背景:小黄开个了电脑用品专卖店,主要经营各种电脑耗材,为了更好的管理每天的销售情况,他用Excel制作了“销售日记录”工作表(图 1)。
由于每天销售人员都上交纸质的销售报表,为了用Excel统计分析,他还需要将销售报表上的数据输入Excel工作表中,这个过程中他遇到一个问题:即把“商品名称”、“单位”、“售价”数据输入后,为了统计“毛利润”,他还要去查找该商品的“进价”。 随着商品数目的增加,这个工作实在相当繁琐,于是他的需求是:能否输入商品名称后,让Excel根据这个名称自动去查找该商品的“进价”数据,并放到图1的H列中。
图1
基础准备:小黄的这个问题,属于可利用Exc...全部
应用背景:小黄开个了电脑用品专卖店,主要经营各种电脑耗材,为了更好的管理每天的销售情况,他用Excel制作了“销售日记录”工作表(图 1)。
由于每天销售人员都上交纸质的销售报表,为了用Excel统计分析,他还需要将销售报表上的数据输入Excel工作表中,这个过程中他遇到一个问题:即把“商品名称”、“单位”、“售价”数据输入后,为了统计“毛利润”,他还要去查找该商品的“进价”。
随着商品数目的增加,这个工作实在相当繁琐,于是他的需求是:能否输入商品名称后,让Excel根据这个名称自动去查找该商品的“进价”数据,并放到图1的H列中。
图1
基础准备:小黄的这个问题,属于可利用Excel查找公式解决的相当典型的问题。
也许初学的朋友会问,什么是Excel查找公式呢?概括的说,所谓查找公式,就是为了查找一个值,在指定的数据区域中搜索,并返回一个值的公式。比如针对小黄的问题,要查找的值就是“商品名称”,在什么指定的数据区域中搜索呢?这点后面会讲,而要返回的值就是商品的“进价”。
了解查找公式的含义之后,我们接着介绍一下查找函数,Excel提供了VLOOKUP、HLOOKUP、LOOKUP、INDEX等常用的查找函数,它们非常重要,因为它们是创建查找公式所必须的,今天我们介绍的主角是VLOOKUP,其它的函数可以通过帮助以此类推地学习和使用。
VLOOKUP函数的功能为:在数据区域首列查找指定的值,并返回数据区域当前行中指定列处的值。听起来有些不好理解,不过不用担心,通过后面的实例会很容易理解。VLOOKUP的语法为:
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
参数解析:
Lookup_value的含义为需要在数据区域第一列中查找的值,它可以为数值、引用或者是文本;
table_array的含义为需要在其中查找数据的数据区域;
col_index_num的含义为table_array中待返回的值的列序号;
range_lookup参数为可选参数,它是一个逻辑值,如果为TRUE或者忽略,则表示返回近似匹配值(也就是说,当找不到精确的匹配值时,则找小于Lookup_value的最大数值)。
如果range_lookup为FALSE时,函数VLOOKUP将只找精确的匹配值,如果找不到,就返回错误值#N/A。
思路分析:有了上面的基础准备,我们可以进入具体操作了,我们的大致思路是,先建立一个“商品基本信息”工作表(图 2),并创建一个“商品基本信息”区域名称,后面就可以把这个区域名称放在VLOOKUP的table_array参数部分,由于这个数据区域中的第一列存放“商品名称”数据,第三列存放了“进价”数据,我们就可以在这个数据区域中通过查找“商品名称”返回其对应的“进价”数据。
>
图2
操作步骤:
说明:为了方便想一起进行下面操作的读者朋友,笔者提供了“查找公式实例(原始文件)”,朋友们可以先下载它到本地电脑,然后打开它同下面的步骤一同操作。
一、 创建“商品基本信息”区域名称
1。
打开“查找公式实例(原始文件)”工作薄文件,进入“商品基本信息”工作表,在名称框中输入“A1:D1000”回车后,A1:D1000单元格区域被选中(图3)。
>
图3
2。 选择菜单“插入→名称→定义”命令(图 4),打开“定义名称”对话框,在名称框中输入“商品基本信息”后,单击“确定”按钮(图 5),“商品基本信息”区域名称创建完成。
>
图4
>
图5
说明:可能有朋友想,创建“商品基本信息”区域名称时,为什么选择了单元格区域“A1:D1000”,而不是“A1:D20”呢?原因很简单,如果只选择单元格区域“A1:D20”创建区域名称,则当新增加商品后,我们的查找公式就不能查找出新商品的“进价”了。
而选择“A1:D1000”创建区域名称后,当有新的商品时,我们可以方便地把新商品的信息添加到单元格区域“A1:D20”的末尾,不难看出我们创建的这个数据区域最多可以放置999个商品信息,区域的具体大小可以根据你自己的商品数量来修改。
二、 创建 “进价”的查找公式
1。 进入到“销售日记录”工作表,选中H2单元格,我们准备在其中输入商品“10米网线”的“进价”查找公式。将鼠标插入点定位到公式框中,通过键盘输入“=VLOOKUP(”,这时出现VLOOKUP函数的参数输入提示(图 6)。
>
图6
2。 由于我们要根据商品的名称查找“进价”,则VLOOKUP函数的第一个参数应该输入“10米网线”所在单元格的引用C2,用鼠标单击一下C2单元格,可以看到Excel自动输入了C2,并以蓝色字体显示(图 7)。
>
图7
3。 用键盘输入一个逗号,接着选择菜单“插入→名称→粘贴”命令,打开“粘贴名称”对话框,选中需要粘贴的名称“商品基本信息”,并单击“确定”按钮后(图 8),区域名称“商品基本信息”被插入到公式中,VLOOKUP函数的第二个参数的位置。
>
图8
说明:用这种方法在公式中输入区域名称,即快捷又不容易出错。
4。 再用键盘输入一个逗号,现在要输入的参数是决定VLOOKUP函数找到匹配商品名称所在行后,该行的哪列数据被返回,由于“进价”数据存放在第三列,所以在这里通过键盘输入数字“3”,再输入一个逗号。
5。 接下来输入最后一个参数,由于我们要求商品名称精确匹配,所以输入参数“FALSE”,最后一个反括号可以不必输入,单击回车后Excel会自动为我们添加。我们可以看到公式准确地返回了“10米网线”的“进价”数据“¥10。
00”(图 9)。
>
图9
6。 最后我们选中H2单元格,把鼠标指针移到该单元格的右下角,当指针变成十字型时,按住鼠标左键拖拉到H8单元格,完成公式的复制(图 10)。
>
图10
三、 让“进价”查找公式更完美
虽然建立的查找公式已经能够很好地执行查找任务,但是它还有个不足。
为了测试,我们可以把C2单元格中的商品名称删去,回车后可以看到H2单元格中返回错误值“#N/A”(图 11)。
>
图11
实际上我们选中H8单元格,利用公式填充柄向下复制公式,也会返回“#N/A”错误值。
这是为什么呢?
因为当商品名称单元格内没有任何内容时,VLOOKUP函数在数据区域的首列找不到匹配的目标,于是就返回了“#N/A”错误值。
在实际操作中,如果商品的数量比较多时,我们很可能一开始就把H列的公式复制到了H100或者更后面,如果在没有输入商品时显示“#N/A”错误值的话,会影响工作界面的美观。
所以我们希望在没有输入商品名称时,不要让“#N/A”错误值显示出来。
借助IF和ISERROR函数可以方便地实现上述目标,选中H2单元格,把原来的公式修改为“=IF(ISERROR(VLOOKUP(C2,商品基本信息,3,FALSE)),"",VLOOKUP(C2,商品基本信息,3,FALSE))”,该公式的含义为:如果“VLOOKUP(C2,商品基本信息,3,FALSE)”部分返回错误值的话,则在H2中显示空字符串;如果“VLOOKUP(C2,商品基本信息,3,FALSE)”部分工作正常,则在H2单元格中显示商品对应的“进价”数据。
公式修改后可以看到即使C2单元格中没有输入任何商品名称,H2单元格中也不会显示原来的“#N/A”错误值(图 12)。最后把公式复制到相应单元格即可。
图12
四、 创建 “单位”的查找公式
最后给朋友们留一个练习,即在D2单元格中建立查找商品名称“单位”的公式。
当然,也要求这个公式在没有输入商品名称时,不显示“#N/A”错误值。另外,建立“小计”列和“毛利润”列的计算公式。
完成之后可以打开 “查找公式实例(完成后文件)”工作薄文件参考一下。
注意:使用查找公式的过程中,关键的一点是,商品名称不能输错,如果输错,则不能返回对应的“进价”数据。
。收起