2012-01-10 148 views
-2

一个Excel的问题(可能不是问的最佳场所)转换Excel公式为IF在PHP

我有我想“转换”到PHP中使用MS Excel公式/否则if/else语句 - 是否有任何Excel专家可以将以下行写入伪代码?

=IF(C10=0,IF(ABS(E2+C2)<0.51,"balanced",IF(ABS(E2+C2)<1.34,"slightly greater",IF(ABS(E2)<2.67,"slightly greater",IF(ABS(C2)>1.17,"slightly greater","significantly greater")))),IF(C10<1.18,"Low",IF(C10<2.68,IF(ABS(E2+C2)>0.51,IF(ABS(E2)>1.18,"High","Moderate"),"Moderate"),"High"))) 
+2

'是否有任何Excel专家可以将以下行写入伪代码?'所以你的问题是,有人可以为我做这个吗?不是在这个网站上... – khr055 2012-01-10 16:51:14

+0

我的不好 - 我曾尝试过一些我只是不熟悉Excel的东西会有一个旋转.. – Zabs 2012-01-10 17:23:33

回答

1

我没有改变的情况下,假设你知道该怎么做,但我转换的嵌套你

if(C10=0) { 
    if(ABS(E2+C2)<0.51) { 
     "balanced", 
    } else { 
     if(ABS(E2+C2)<1.34) { 
      "slightly greater", 
     } else { 
      if(ABS(E2)<2.67) { 
       "slightly greater", 
      } else { 
       if(ABS(C2)>1.17) { 
        "slightly greater", 
       } else { 
        "significantly greater" 
       } 
      } 
     } 
    } 
} else { 
    if(C10<1.18) { 
     "Low" 
    } else { 
     if(C10<2.68) { 
      if(ABS(E2+C2)>0.51) { 
       if(ABS(E2)>1.18) { 
        "High" 
       } else { 
        "Moderate" 
       } 
      } else { 
       "Moderate" 
      } 
     } else { 
      "High" 
     } 
    } 
} 
+0

感谢您的罗布 - 会让你知道我如何得到。 – Zabs 2012-01-10 17:24:40

+0

欢呼@Rob - 我用你的伪代码,慢慢设法解决它!很多再次感谢问题解决:) – Zabs 2012-01-10 17:36:52

1

没有测试它:

if($c10 == 0) 
{ 
    if((abs($e2+$c2) > 0.51) && (abs($e2+$c2) < 1.34)){ 
     echo "slightly greater"; 
    } 
    elseif(abs($e2+$c2) < 0.51) { 
     echo "balanced"; 
    } 
    elseif(abs($e2) < 2.67){ 
     echo "slightly greater"; 
    } 
    elseif(abs($c2) < 1.17){ 
     echo "slightly greater"; 
    } 
    else{ 
     echo "significantly greater"; 
    } 
} 
elseif($c10 < 1.18) { 
    echo "Low"; 
} 
elseif(($c10 < 2.68) && ($c10 > 1.18)){ 
    if(abs($e2+$c2) > 0.51){ 
     if(abs($e2) > 1.18{ 
      echo "High"; 
     } 
     else{ 
      echo "Moderate"; 
     } 
    } 
    else{ 
     echo "Moderate"; 
    } 
} 
else{ 
    echo "High"; 
} 

重要的一点是要获得合理的操作权。即如果$ c小于2.68,但大于1.18,则做到这一点。

+0

非常感谢我确定这将帮助我 – Zabs 2012-01-10 17:24:22

+1

您上面写道,你不熟悉Excel - 也许这将帮助你 - 在Excel中的IF操作作为=> IF(逻辑测试(即C10 < 1.18),(逗号)如果逻辑测试为TRUE则为代码(逗号)如果逻辑测试为FALSE,则为代码 – Elen 2012-01-10 17:30:45

+0

谢谢Elen确实有帮助 - 在自己和Rob的帮助下最终解决。再次感谢 – Zabs 2012-01-10 17:42:12