excel公式求助:目标为0.65%,高于目标值0.1%扣0.5分,扣完为止;每低 0.1%,加 0.1 分,加分 120%封顶。

如图,F4为离网率,标准值是0.65,满分为5分,各位大神帮帮忙
2025-02-15 17:55:15
推荐回答(3个)
回答1:

'右键点击表格最下面的标签名称 查看代码 粘贴 按F5运行
'excel 公式需要用到很多if判断(大神是否更方便的方法)
Sub cs()
'目标为0.65%,高于目标值0.1%扣0.5分,扣完为止;每低 0.1%,加 0.1 分,加分 120%封顶(基础分5分 区间0-6)。
For i = 4 To 19 'G列开始到结束
If Cells(i, "F") <> 0 Then '是否为0,是跳过
    x = Round(0.0065 - Cells(i, "F"), 3) '扣除0.65% 取值到千分位
    If x >= 0 Then
        x = Round(x / 0.001, 1) * 0.1 + 5 '每低 0.1%,加 0.1 分,加分 120%封顶
        If x > 6 Then Cells(i, "G") = 6 Else Cells(i, "g") = x
    End If
    If x < 0 Then
        x = Round(x / 0.001, 1) * 0.5 + 5 '高于目标值0.1%扣0.5分,扣完为止
        If x > 0 Then Cells(i, "G") = x Else Cells(i, "G") = 0
    End If
End If
Next

End Sub

回答2:

=IF(F4-0.65%>=1%,0,IF(F4-0.65%>=0,5-(F4-0.65%)*500,IF(F4-0.65%>=-2%,5-(F4-0.65%)*100,7)))
(公式高(低)于目标值,是采用减法计算的)

回答3:

=5+IF(F4>0.65%,-MAX(5,(F4-0.65%)/0.1%*0.5),MIN(5*120%-5,(0.65%-F4)/0.1%*0.1))