在生活中有很多需要分段、阶梯式计算的情景,如阶梯电价、销售人员阶梯提成、个人所得税等。这些计算有一个共同点:需要分段计算,超过某个范围后需适用另外一个比例且该比例逐渐递增。

本文以阶梯电价的计算为例,充分利用Excel函数公式来介绍这种计算方法,供大家学习参考。

案例背景和数据介绍:

如下图所示,A1单元格存储本月所用电量数(单元格实际输入的数据是253,通过自定义单元格格式显示成如图效果),需根据阶梯价格表计算本月应交电费金额。

为解决上述问题提供下列3个公式,本次分享第一个公式:

=SUMPRODUCT(IF(A1-{0,260,600}>0,A1-{0,260,600},)*{0.68,0.05,0.25})=SUMPRODUCT(TEXT(A1-{0,260,600},"0;\0")*{0.68,0.05,0.25})=SUMPRODUCT(TEXT(A1%-{0,2.6,6},"0%;\0")*{68,5,25})

接下来,我们通过步骤拆解,来解讲如何利用函数快速计算阶段电价:

步骤1:将电价标准转化成阶梯图形

如下图,蓝色区域表示的是每一档标准的电费单价(C23,E22和G21)。其中酒红色单元格表示的是每一档电费单价与上一档单价之差(E23和G22)。中间部分表示的是用电度数(A1单元格的值)在各阶梯中的分布。

1)假设当月用电量低于或等于260度,那么该月电费为A1*0.68。

2)假设当月用电量大于260度且小于等于600度,那么该月电费计算为:260度*0.68+(A1-260)度*0.73。整理得到:A1*0.68+(A1-260)*0.05。理解起来实际意义是这样的:当月所用电量每度先支付0.68元,超出260度的每度再支付0.05元。

3)和步骤2推断类似,当月用电量大于600度时电费计算结果为:A1度*0.68+(A1-260)度*0.05+(A1-600)度*0.25。实际意义为:所有的电量每度先支付0.68元,超过260度的每度先支付0.05元,最后超过600度的部分每度再额外支付0.25

步骤2:用面积图的方法解释一个例子

假设当月用电量为678度,那么总电费金额=678度*0.68+(678-260)度*0.05+(678-600)度*0.25,也就是下图中棕色、黄色和蓝色三个区域面积之和。

步骤3:将上述计算方法用数组方式表达

选中C70:C72,输入=(A1-{0;260;600})*{0.68;0.05;0.25},按Ctrl+Shift+Enter运行公式即可直观在单元格中看到步骤2中三个颜色块代表的计算结果。

上述公式参数在步骤二面积图中的意义如下:A1-{0;260;600}代表各色块矩形的长,{0.68;0.05;0.25}代表各色块矩形的宽。

如果A1的值小于分段点,比如说是A1=576度,那么A1-{0;260;600}={576;316;-24},其中的负数说明该分段点所在的颜色块面积不应算在结果之内。因此外层嵌套个IF函数,如果返回值小于0则返回0,也就是:IF(A1-{0,260,600}>0,A1-{0,260,600},)。

上述返回结果再乘以{0.68,0.05,0.25}并求和就得到了应交电费总数,完整公式为:=SUMPRODUCT(IF(A1-{0,260,600}>0,A1-{0,260,600},)*{0.68,0.05,0.25})

C语言阶梯电费函数,用阶梯电价计算逻辑学习销售人员阶梯提成计算函数相关推荐

  1. python实验指导书答案函数代码复用_#Python学习笔记(5)函数和代码重用,复用

    七段数码管绘制 绘制单段数码管 def drawLine(draw): turtle.pendown() if draw else turtle.penup() #将绘制一条线定义为一个基本函数, 参 ...

  2. c语言计时纳秒_C代码中以纳秒为单位计算函数时间

    匿名用户 不管您如何处理这个问题,也不管您使用的是哪种类型的System/OS,您最多只能得到一个近似的答案,由于问题的性质,会有相当大的差异. 第二,你需要一个支持这种调用的系统.如果你使用QNX中 ...

  3. python函数复用_【python学习-4】可复用函数与模块

    1.自定义函数 自定义函数格式如下: def (参数列表):return #!/usr/bin/python#定义函数,打印数字1~5 defprintNum5():#range函数,生成列表集合,有 ...

  4. python中map函数返回值类型_Python学习第42课-map()函数

    [每天几分钟,从零入门python编程的世界!] 今天我们学习另一个比较常用的内置函数map(). ●描述 map()会根据提供的函数对指定迭代器做映射. 它有两个参数,第一个参数是一个函数,第二个参 ...

  5. 【Python学习笔记】第八章 函数

    [Python学习笔记]第八章 函数 文章目录 [Python学习笔记]第八章 函数 前言 8.1 定义函数 8.2 调用函数 8.2.1 使用位置参数调用函数 8.2.2 使用关键字参数调用函数 8 ...

  6. 浙大版《C语言程序设计(第3版)》习题2-2 阶梯电价

    为了提倡居民节约用电,某省电力公司执行"阶梯电价",安装一户一表的居民用户电价分为两个"阶梯":月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦 ...

  7. 厦门市阶梯电价如何计算,厦门电量阶梯收费

    求问梯度电费计算公式 居民阶梯分夏季和非夏季标准,5月-10月为夏季标准,1-4月.11-12月为非夏季标准. 夏季标准的分档是:第一档电量:每户每月0-260度:第二档电量:每户每月261-600度 ...

  8. 为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦时;超过50千瓦时的,超出部分的用电量,

    为了提倡居民节约用电,某省电力公司执行"阶梯电价",安装一户一表的居民用户电价分为两个"阶梯":月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦 ...

  9. python 使用多个elif代码块 计算阶梯电费

    根据需要使用任意数量的elif 代码快, 例如阶梯电费 1<= a<=240 度 ,总电费按阶梯电费每度0.483元计算 240< a<=400 度,总电费按阶梯电费每度0.5 ...

  10. R语言ggplot2可视化:使用geom_step可视化阶梯图、阶梯线图、可视化分组阶梯线图、自定义填充不同分组的阶梯线图(filled geom_step)

    R语言ggplot2可视化:使用geom_step可视化阶梯图.阶梯线图.可视化分组阶梯线图.自定义填充不同分组的阶梯线图(filled geom_step) 目录

最新文章

  1. 有关 ecshop 属性 {$goods.goods_attr|nl2br} 标签的赋值问题
  2. 找到所有小于N的素数
  3. 编写高质量代码:改善Java的151个建议五(类、对象、方法)31-51
  4. day 31 进程的其他方法 进程锁 进程队列
  5. python论坛签到_论坛自动签到教程
  6. 《编程题》组装三角形
  7. 路由相关的初始化(二)
  8. [Ext JS 4] 实战之多选下拉单 (带checkbox) 续 - 带ALL 选项
  9. 2021年淮南高考成绩查询,2021年淮南高考最高分多少分,历年淮南高考状元
  10. dvwa-sql盲注
  11. 浅谈JAVA工作流的优雅实现方式
  12. 思维方式-《策略思维》书中的精髓:生活工作中博弈无处不在,理解博弈论、善用策略思维,能帮助我们做出更好的决策。
  13. web安全工具库(笔记)----端口扫描(ScanPort.exe)
  14. 微信公众号里面使用定位
  15. ubuntu 安装gnome3
  16. Python教你一键获得【王者荣耀全皮肤】~~~
  17. 中棉所建议国家扶持棉花产业
  18. 鼠标右键转圈圈_了解原理并解决鼠标右键转圈圈
  19. uniapp小程序使用getUserProfile登录(获取昵称统一为‘微信用户’+头像为灰色头像)
  20. 网络和VPC简单介绍

热门文章

  1. 求闰年的c语言程序函数,c语言闰年(闰年的算法c语言程序)
  2. 软件著作权登记申请容易通过吗?软著申请成功率高吗?
  3. ArcGIS 矢量编辑札记(一):Field Calculator 篇
  4. 通信子网和资源子网的区别
  5. PE文件偏移地址分析
  6. 12种常见贴片焊接工具
  7. 如何用photoshop快速换脸
  8. 8.0高等数学五-斯托克斯公式
  9. 如何在线修改图片分辨率?怎么调整300dpi分辨率?
  10. vue开发必备神器:vue-devtools