|
想要向大家求助是否能通过function创造自定义公式来解决社保公积金的计算
在SSB表中的雇主缴纳金额列,比如说K列里面写了很长的公式,但其实想要达到的效果很简单,如下:
如果SSB表中员工的社保缴纳地(C列)和社保类型(G列)如果跟SSB Policy表中G列内容一致,就获取对应行的BQ列的计算方式和BR列的计算结果保留位数。如果BQ列为Round,BR列为2,那在SSB表中K列的输出结果就是=round(I列的基数*J列的比例,2)。如果SSB Policy表中BQ列为Ceiling,BR列为2,那那在SSB表中K列的输出结果就是=roundup(rounddown(I列的基数*J列的比例,2+1),2)。剩下的五险一金都是一样的计算逻辑。
因为全国不同城市的社保公积金计算方式和计算结果保留位数不一致,就像通过把基本数据存储到SSB Policy表中,通过公式的计算,以后政策变化或者是新增城市,只要修改数据源表SSB Policy就可以了。但是现在的公式太长,大量使用index计算量太大,原本的计算表(附件只是一部分)已经快要转不动了。所以想求助说是否可以自定义公式来解决,希望大家帮帮忙,谢谢啦!
如果有逻辑相似的自定义公式,也希望能够分享参考,我不太懂怎么把数据源放在Excel表单里再通过VBA调用的部分,谢谢啦!
|
|