如果以前的累计里程由Old
表示,则Miles
的附加里程数和Thold
应支付的较低费率的阈值则考虑以下内容。有3种情况:
Old+Miles<=Thold
:以更高速率
Old<Thold<=Old+Miles
支付的所有Miles
:Miles
分裂,使Thold-Old
在更高的速度和Miles-(Thold-Old)
支付以较低的速度
Thold<=Old
:以较低的速度全部Miles
支付。
Miles
以较高速率支付每当Old
小于Thold
和以较高速率支付的里程数是Miles
较小(情形1)和Thold-Old
(情况2)。这可能会在类似于Excel的方式来表示
`=IF(Thold-Old>0,IF(Miles<Thold-Old,Miles, Thold-Old),0)`
而是一个更简洁的表达是
`=MIN(Miles,MAX(Thold-Old,0))`
这两个公式,在三种情况下都提供一个正确的结果(包括案例零值3.),因此每一个代表一个通用公式,适用于以更高费率支付的里程数。
同样,英里是在较低的速率每当Old+Miles
超过Thold
支付,并在该速率支付数是Miles
(情况3)和Miles-(Thold-Old)
(情况2)的较小者。在这种情况下,IF
表达式为:
`=IF(Old+Miles>Thold,IF(Miles<Miles-(Thold-Old),Miles,Miles-(Thold-Old)),0)
但是这可以等效写成
`=IF(Old+Miles-Thold>0,IF(Miles<Miles+Old-Thold,Miles, Miles+Old-Thold),0)`
,我会离开它你作为一个练习,制定出简洁的版本。公式(e)为情况1提供了0的结果,因此通常适用于计算以较低费率支付的里程。
来源
2017-08-18 19:36:17
DMM
你可以添加一些代码来显示你已经尝试过吗? – EFrank
我已经尝试了许多不同的简单公式,但似乎无法得到任何工作,我想如何。基本上我想要它做什么(以图片为例),当英里数(49的总和从不同的标签中拉出)时,我希望它到右侧的列,它将在我已经展示的例子中分割。所以我希望44进入顶栏,然后4进入第二栏,如果新的总数低于10,000,我只希望这一切都保持在正确的行中。 –
你可以展示一些你尝试过的公式吗? – dwirony