EXCEL 数组公式计算个税
EXCEL 数组公式计算个税
哪位能帮我解释下这个数组公式
ROUND(MAX((A2-3500)*0.05*{0.6,2,4,5,6,7,9}-5*{0,21,111,201,551,1101,2701},0),2)
{0.6,2,4,5,6,7,9}是一个有7个项的数组,{0,21,111,201,551,1101,2701}是另一个有7个项的数组
(A2-3500)*0.05*{0.6,2,4,5,6,7,9}指用A2的值减去3500的差,再乘以0.05,得到的积乘以数组{0.6,2,4,5,6,7,9}的每一项——这样,会得到7个结果(结果集合A)
5*{0,21,111,201,551,1101,2701}——也会得到7个结果.(结果集合B)
集合A中有7个项,结果B中也有7个项;
(A2-3500)*0.05*{0.6,2,4,5,6,7,9}-5*{0,21,111,201,551,1101,2701}则把上述集合A的每一项作为被减数,对应减去集合B中的每一项(第1项对应相减、第2项对应相减……)——得到7个差
这7个差成为一个新的数组C
max(数组C,0)则在这个数组C的7个项以及数值0进行比较,从中找出最大的一个值.若数组C的最大项为负数,则得到0;否则,以数组C中最大项作为max的结果.
round(最大值,2)
对最大值按四舍五入保留两位小数.
上述公式,须Ctrl+Shift+回车三键结束输入.得到的结果为不小于0的数谢谢您的解答 再问一下:为什么数组C最大的一个是计算结果呢max(数组c,0)MAX是从一堆数中找最大值。数组C有7个数据,连0一共8个数据;MAX就在这8个数中找最大值——如果数组C的每项均小于0,那么8个数据的最大值为0;如果数组C中有大于0的数据,那么这8个数据中最大的一个当然就在数组C中。