学校新闻
(三)没有那么复杂——如何计算所得税率
前言
本文是《为什么说函数不是最好的解决方案》系列的第三篇。本系列是为了说明很多人追求的复杂的高大上的函数并不是最好的Excel解决方案。上一篇我们介绍了《高大上的sumproduct和sumifs》
。本篇我们从另一个角度:复杂的不是最好的。我们将从一个案例看最简单的才是最适合我们的
问题的提出
在使用Excel时,我们往往需要根据各种条件来找到对应的数值(级别,比例,参数)等。例如,所得税的计算就是这样的。
进行所得税计算时,我们面对这么一种情况:

在上图中,我们需要根据员工的工资,确定他的应税金额。这样就需要根据他的工资,得到对应的税率和速算扣除数,从而能够计算最后的应税金额。
这当然是函数的工作。
很多人就会从网上搜索一个答案,或者向能接触到的高手求助,高手会给你一个答案。这个答案多数是一个复杂的函数,类似于下面这种:
.jpg)
或者是这种:

一看到这个函数,我们就被震撼了!太复杂了,水平太高了,尽管我看不懂!
不过没关系,高手会给你介绍这是如何做到的:
你用的时候发现得不到结果,没关系,高手会耐心的询问你表格的具体情况,帮助你调整这个函数,直至你能够用它完成工作。
问题在哪里?
那么这么做的工作有什么问题吗?
确实,你得到了答案,解决了问题?还同时对Excel的能力有了更深的认识,对高手的水平也非常佩服。这一切都非常完美。
但是,我们要注意到一点:如果你有过多次这样的经历,就会发现这种行为方式成为了你解决问题的一个固有模式。遇到问题,如果没人给你一个答案,你就毫无办法。你希望把以前的那个函数改改,应用到当前的状况中,你发现根本不知道从何改起!
这就是最重要的问题:你根本没有学会!
不管你当时有没有看懂这个函数,大部分“表哥表姐”根本没有掌握这个函数的用法。你不可能在一个改变了的场景下自己独立写出类似的函数;你也不可能在一个与之类似但是不同的要求下用这么复杂的函数来解决问题;
你只能上网发问,或者向高手求助。
这里我们假设你学习Excel的目的是独立完成自己的大部分工作,那么你就需要用更简单的自己能够理解的方法来解决这些问题,而不是用复杂的自己看不懂的函数来解决。
另一种解决方法
我们来看另一个解决方案。在这个解决方案中,我们使用了函数vlookup。
Vlookup是Excel中最常用的函数之一,掌握它是对每一个Excel使用者的基本要求。如果你不会,请看这里的三篇文章:
Vlookup函数的使用入门
Vlookup函数的使用进阶
Vlookup函数使用时的常见错误
我们看一下这个公式:

这里,我们只不过是使用了vlookup函数的模糊查找方式,不仅仅公式简单,而且非常直观,便于理解。即使以后所得税标准变了,也不需要修改公式,只要修改所得税税率表就可以了。在其他的应用场景中(例如,员工评级),也非常容易参照类似做法。
速算扣除数公式类似。
两个方法的比较
比较这两个方法,都可以解决这个问题。但是各有特点。
方法一
优点:只要一个函数就可以,看上去比较直接
缺点:多重嵌套if函数非常难以理解,修改困难;标准一遍救得重新写;依赖专家
方法二
优点:函数简单,容易理解;是常用函数,每个人都掌握。可以自己修改,不依赖与专家
缺点:多一个参数表
相对来说,多一个参数表在Excel中算不上什么缺点。更加重要的是,你用这个方法几乎可以解决所有类似的问题。
总结
If和vlookup函数是Excel中最常用的两个函数。但是If函数的多重嵌套我们却不推荐使用,因为它过于复杂,容易出错,不易修改。而vlookup函数容易理解,在这个问题中是当然的选择。
这个例子说明了使用复杂的函数不一定是Excel中最好的解决方案。在大多数情况下,最简单的才是最合适的解决方案。因为简单的方法你一旦掌握,就可以自由应用,成为你自己的重要工具。复杂的方法因为很难掌握,导致你只能依赖于搜索和专家,很难提高工作效率和质量