设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 4278|回复: 11
打印 上一主题 下一主题

[模块/函数] 【Access小品】超额累进算法详解

[复制链接]
跳转到指定楼层
1#
发表于 2012-4-9 19:33:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 todaynew 于 2012-4-9 20:11 编辑

  近些时日见若干版友问及销售额分段提成、水费阶梯计价和个税计算等问题。此类问题实际上皆可归结于超额累进计算问题,于是便觉得有必要详细论述一番这个问题了。

  解决超额累进计算有一个简算的公式,这个公式为:Y=aX+b。

  其中Y是要得到的提成、水费或者个税,X是销售金额、用水量或者应税额,a为X在某个区间内的提成率、阶梯水价或者税率,b为X在某个区间内的速算系数。解决问题的关键就是需要预先通过计算得到所有区间内的速算系数b。那么b该如何计算呢?

  我们先来看看,超额累进计算的最为原始的公式:



  通过这个方程组我们进行如下的推导:



  这样我们就得到了超额累进的简算公式,以及b的求解方法:



  实际上,超额累进公式在解析几何上表现为一条从坐标原点出发向右上角运动的折线轨迹。



  这说明了什么?请注意这个问题!答案是超额累进问题实际上是一个折线方程组求解问题,也就是说找到了超额累进问题的程序求解方法,也就找到了折线方程组的求解方法。我们在真正解决问题之前,所进行的这样一个推导和扩展思维的过程,也许比解决这个问题更有意义。

  当然你也可不必去关心这个坐标系中的折线变化规律,直接去找到用程序来解决超额累进问题的具体办法。这时可以考虑建立一个数据表来存放与超额累进计算有关的基础数据,当然重点仍然在于用一组代码,通过简算公式来计算速算系数,并将其保存在数据表中。解决这个问题后,引用数据表就是一个简单问题了。





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

本帖被以下淘专辑推荐:

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享分享 分享淘帖1 订阅订阅
2#
发表于 2012-4-9 22:12:14 | 只看该作者
解释的好。
顺便问一下,在VBA中有没有表示无穷大的数的符号?
3#
 楼主| 发表于 2012-4-10 06:37:12 | 只看该作者
aslxt 发表于 2012-4-9 22:12
解释的好。
顺便问一下,在VBA中有没有表示无穷大的数的符号?

好像没有吧?
4#
发表于 2012-4-10 10:15:30 | 只看该作者
年休假函数如下:
Function rian(qx As Integer) As String
Select Case qx
Case 1 To 10
rian = "5"
Case 11 To 19
rian = "10"
Case 20 To 45
rian = "15"
End Select
End Function
也想用版主的办法来计算

5#
发表于 2012-4-10 10:22:15 | 只看该作者
学习
6#
 楼主| 发表于 2012-4-10 11:35:02 | 只看该作者
ycxchen 发表于 2012-4-10 10:15
年休假函数如下:
Function rian(qx As Integer) As String
Select Case qx

这不是超额累进吧?
7#
发表于 2012-4-10 15:23:57 | 只看该作者
todaynew 发表于 2012-4-10 11:35
这不是超额累进吧?

明白!
8#
发表于 2012-5-15 12:56:32 | 只看该作者
看了,很好。
9#
发表于 2013-4-16 23:18:00 | 只看该作者
很好,有启发
10#
发表于 2015-7-20 15:18:15 | 只看该作者
学习学习,谢谢分享!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-12-1 17:53 , Processed in 0.108162 second(s), 37 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表