IF构建在Excel中

时间:2011-07-01 03:59:03

标签: excel vba excel-vba

任何人都可以帮我执行以下操作......

示例:

      A    B C D

row 1 ODZN 2 3 

row 2 EAXO 3 4

我需要一个IF语句,它给出了这个逻辑......

  1. 如果A:1ODZN,,则为D1=(B:1)*(C:1)*5,否则为
  2. 如果A:2EAXO,那么D1=(B:2)*(C:2)*20 ...等等,使用不同的变量.... 每个不同的变量都有不同的乘数.......
  3. 我会将公式复制并拖动到一大堆数据中,最终转换为宏

    任何人都可以提供帮助..并且可能会告诉我需要将其定义为变量...

    乘数由我手动设定。变量将在excel中定义。

    谢谢!

1 个答案:

答案 0 :(得分:3)

我想你的意思是:

  

表示行,如果A列中的值是ODZN / EAXO,则列D中的值得到乘数5/20。

答案:

=B1*C1*IF(A1="ODZN",5,IF(A1="EAXO",20,0))

然后拖动。

您可以根据需要嵌套尽可能多的IF。 (我在这里使用了一个不必要的0来说明IF如何嵌套,可以简化为IF(A1="ODZN",5,20))。

当然,你可以编写一个函数,然后就像

=B1*C1*func(A1)

但是,宏需要在更高版本的Excel中运行身份验证。如果值变化不是那么多,我会推荐公式解决方案。