D4和C4是excel当中的列E4=IF(OR(0.7*D4>C4,C4>=1.3*D4),50,IF(AND(1.3*D4>C4,C4>=D4),50+40*(1.3*D4-C4)/D4/0.3,IF(AND(D4>C4,C4>=0.7*D4),90+10*(D4-C4)/D4/0.3,-1)))
麻烦朋友们帮忙解释一下这段代码的意思,谢谢,分部够可以再加

解决方案 »

  1.   

    如果  0.7乘D4的值大于C4 或 C4大于或等于1.3乘D4的值,则E4的值等于50
    如果  1.3*D4大于C4并且C4大于D4, 则E4的值等于50加上40*(1.3*D4-C4)/D4/0.3
    如果  D4大于C4并且C4大于或等于0.7*D4,则E4的值等于90+10*(D4-C4)/D4/0.3
    其余情况下,则E4的值等于 -1
      

  2.   

    如果  0.7乘D4的值大于C4 或 C4大于或等于1.3乘D4的值,则E4的值等于50 
    如果  1.3*D4大于C4并且C4大于或等于D4, 则E4的值等于50加上40*(1.3*D4-C4)/D4/0.3 
    如果  D4大于C4并且C4大于或等于0.7*D4,则E4的值等于90+10*(D4-C4)/D4/0.3 
    其余情况下,则E4的值等于 -1
      

  3.   

    先看大的逻辑
    E4=IF(OR(0.7*D4>C4,C4>=1.3*D4),50,IF(AND(1.3*D4>C4,C4>=D4),50+40*(1.3*D4-C4)/D4/0.3,IF(AND(D4>C4,C4>=0.7*D4),90+10*(D4-C4)/D4/0.3,-1)))
       if(        条件         ,真做,   假做                                                                                           )
                                      IF(AND(1.3*D4>C4,C4>=D4),50+40*(1.3*D4-C4)/D4/0.3,IF(AND(D4>C4,C4>=0.7*D4),90+10*(D4-C4)/D4/0.3,-1))
                                      if(         条件       ,          真做         ,           假做                                 )
                                                                                        IF(AND(D4>C4,C4>=0.7*D4),90+10*(D4-C4)/D4/0.3,-1)
                                                                                        if(       条件         ,     真做         ,假做)
      

  4.   

    再看细节E4=IF(OR(0.7*D4>C4,C4>=1.3*D4),50,IF(AND(1.3*D4>C4,C4>=D4),50+40*(1.3*D4-C4)/D4/0.3,IF(AND(D4>C4,C4>=0.7*D4),90+10*(D4-C4)/D4/0.3,-1))) *************************
    OR(0.7*D4>C4,C4>=1.3*D4)
    或的关系
    0.7*D4>C4 和 C4>=1.3*D4 有一个为真即为真
    ————————————————————————
    AND(1.3*D4>C4,C4>=D4)
    和的关系
    1.3*D4>C4 和 C4>=D4 全部为真才为真
    ————————————————————————
    AND(D4>C4,C4>=0.7*D4)
    和的关系
    D4>C4 和 C4>=0.7*D4 全部为真才为真
      

  5.   

    转换为 VB/VBA 的逻辑(下面的 C4、D4、E4指的是相应单元格的值):
    If ((0.7*D4 > C4) Or (C4 >= 1.3*D4)) Then
        E4 = 50
    Else
        IF((1.3*D4 > C4) And (C4 >= D4)) Then
            E4 = 50+40*(1.3*D4-C4)/D4/0.3
        Else
            If ((D4 > C4) And (C4>=0.7*D4)) Then
                E4 = 90+10*(D4-C4)/D4/0.3
            Else
                E4 = -1
            End If
        End If
    End If
      

  6.   

    如果  0.7乘D4的值大于C4 或 C4大于或等于1.3乘D4的值,则E4的值等于50,否则 
                                                                      如果  1.3*D4大于C4并且C4大于D4, 则E4的值等于50加上40*(1.3*D4-C4)/D4/0.3,否则 
                                                                                                                                                如果  D4大于C4并且C4大于或等于0.7*D4,则E4的值等于90+10*(D4-C4)/D4/0.3,否则 
                                                                                                                                        E4的值等于 -1