{0.6,2,4,5,6,7,9}是个数组。
0.05*{0.6,2,4,5,6,7,9}={0.03,0.1,0.2,0.25,0.3,0.35,0.45}是个税的税率公式。
5*{0,21,111,201,551,1101,2701}={0,105,555,1005,2755,5505,13505}是各级别的个税扣除额。
{0,21,111,201,551,1101,2701},这么来,是因个税的税率而来,知道纳税扣除额的累进计算公式,应该就能理解这个。实在不能理解,就认为是各级别的个税扣除额除25吧。
(A1-3500)*5%*{0.6,2,4,5,6,7,9}-5*{0,21,111,201,551,1101,2701}是纳税额*各级个税税率-应扣额后的数字,如果税率对应的级别<=纳税额时,税率越大税额越大,符合所缴税款和所得相匹配的原理。如果税率对应的级别>纳税额时,税率越大税额越小,因为扣减了超额的扣除数,这样保证了,缴税数组里最大的那个一定是最符合相应税率的。
因为存在了纳税额<0的情况,即工资不满3500的,为避免出现税额为0,就在(A1-3500)*5%*{0.6,2,4,5,6,7,9}-5*{0,21,111,201,551,1101,2701}后添了一个“,0”的值保证计算税额的公式MAX((A1-3500)*5%*{0.6,2,4,5,6,7,9}-5*{0,21,111,201,551,1101,2701},0)必定有个0值,在用MAX求最大时,出现的税额一定是符合税率的,并最小的数是0,不会出现负数。
外套ROUND函数,就是4舍5入到2位小数的意思了