Excel中IF函数实例:制作工资表和计算个人所得锐
本文我们将通过实例讲解用excel制作工资表的流程。在用Excel制作工资报表的过程中需要注意所得税的计算问题和工资表平衡问题。
第一,所得税计算问题。 按照《个人所得税法》法规相关规定,个人工资小于等于1000元时,不纳税;工资大于1000元且小于等于1500元时,税率为5%;工资大于1500元时,税率为10%。 我们应用逻辑函数IF()对所得税额作两段处理,在“所得税”P3中输入公式“=IF(O3>1500,(O3-1500)*0.1+500*0.05,(O3-1000)*0.05)”,以致个人工资小于等于1000元时无法得出税额为零。如下表所示,表中“应税工资”O8、O12分别为908.66、838.26,故“所得税”P8、P12中的值应为0,而现在却分别为4.57和8.09。为了使个人工资小于等于1000元时税额为零,只得重新核查报表并在相关单元格输入零。
第二,工资表平衡问题。 每次制作工资表总是难以平衡,误差少则几分钱,多则几角。表中Q10中的公式为“=O10-P10”,应为1316.82,可表格计算却为1316.83,原因何在?
所得税的计算。用逻辑函数IF()计算所得税时,如果利用单层IF()函数,无法处理两种以上的状态,单层函数只能按给定表达式的值或真或假,返回两种状态中的一种,以致课税工资小于等于1000元时无法得出税额为零。而利用IF()函数的嵌套,则可实现对多种状态的处理。所谓函数嵌套,指函数的参数包含子级函数,Excel函数嵌套最多可含7层。鉴于此,可用嵌套函数写“所得税”P3中的公式,公式为:“=IF(O3>1500,(O3-1500)*0.1+500*0.05,IF(O3>1000,(O3-1000)*0.05,0)),并将该公式复制到“P4:P12”。这样处理,课税工资小于等于1000时的税额即可为零,如下表中P8、P12的值为0。
工资表的平衡。工资表不平衡源于对所得税小数位数的取舍。按实际意义,所得税应为两位小数,而按税率公式计算的所得税却为三位小数。上表所得税为两位小数只是一种形式,是通过格式化单元格而得到的,实际上它是三位小数。其中,P10形式为16.68,实为16.675,Q10中的值应为:“1333.50-16.675=1316.825”,由于取两位小数,于是出现了:“1333.50-16.68=1316.83”的误差。这种误差只出现于所得税小数第三位为5的情况,至于其它情况则不会出现。一个单位职工人数多达数百人,所得税小数第三位为5的对象肯定不止一个,这样的对象越多,则误差越大。如何解决这一问题?利用舍入函数ROUND(),将所得税由形式上的两位小数变为实际的两位小数,即可解决这一问题,即将“所得税”P3中的公式改为:“=IF(O3>1500,ROUND((O3-1500)*0.1+500*0.05,2),IF(O3>1000,ROUND((O3-1000)*0.05,2),0)),并将该公式复制到“P4:P12”。
到此,用excel就制作出了一张正确无误的工资表。