【问题标题】:Applying multiple conditions to formula将多个条件应用于公式
【发布时间】:2013-11-23 15:16:09
【问题描述】:

我有一种情况,我需要将多个“值边界”应用到几个不同的“起始位置”,然后输出“持续位置”。

“值边界”是:=500750850

“起始位置”是“基本”、“标准”、“标准+”和“白金”,

然后应用值边界并输出“正在进行的位置”,

例如一个从“基本”开始的人达到 600,然后转到“标准”,或者“白金”的人得到 700,所以恢复到“标准+”等等,我已经用嵌套的 IF 尝试过,但无济于事。

编辑:似乎解决方案超出了公式我需要 VBA 来解决这个问题吗?

【问题讨论】:

  • 这不是和你上一个问题一样吗?
  • Nested IF statement的可能重复
  • 是的,我改写了措辞以使其更容易理解

标签: excel if-statement excel-formula multiple-conditions vba


【解决方案1】:

如果你可以在某个地方有一个包含范围的表格,这对你有用。

单元格 F1 包含 E1 中使用的公式(作为文本)。然后你可以向下复制粘贴。

【讨论】:

    【解决方案2】:

    没有 VLOOKUP() 表:

    =IF(A1=500,A1=750,A1

    注意:

    在 VBA 中,And 语法略有不同。

    【讨论】:

    • 谢谢你,我忘了说系统是一次一步的变化,因此根据起始位置,上述边界只会导致上一步或下一步,例如白金获得 400 的人将转到“标准+”而不是“基本”我如何才能将此功能纳入公式
    • 以上在单一条件下有效,但正如我上面所说,我需要能够将一步移动应用于不同的起始位置,有什么想法吗?
    • 我可以解决这个问题,但它需要一个“帮助”列。你还好吗。用这个??
    • 是,但不确定你的意思
    【解决方案3】:

    如果我对您的理解正确,您将输入两个数字,然后根据这些数字在您的边界条件下所处的位置,将确定当前位置。此外,当前位置与起始位置不能超过“一个不同”。

    既然如此,在 D1 中的第一个分数,在 E1 中的第二个分数,我认为以下公式将输出正在进行的位置:

    =CHOOSE(匹配(D1,{0;500;750;850})+SIGN( 匹配(E1,{0;500;750;850})-匹配( D1,{0;500;750;850})),"基本","标准","标准+","白金")

    【讨论】:

    • 分数累积超过 14 天,然后根据我的边界条件上下移动一步或根据边界保持不变,并获得总分。然后在接下来的 14 天内输出持续的情况,直到重新评估,希望这是有道理的,如果可以的话,我会尝试你的例子和修补
    • 现在您正在添加另一个您在初始帖子中未提供的参数。如果您无法调整所提供的解决方案之一来解决您的问题,您将需要坐下来考虑如何充分解释您的问题。数据输入在哪里?我们怎么知道 14 天过去了?换句话说,您是如何设置工作表的?以及您希望如何显示结果。然后重新阅读您的帖子,并确保您清楚地提供了所需的一切;以及您尝试过的信息;你得到了什么结果;以及您期望的结果。
    【解决方案4】:

    O.K....将值序列放在 A 列中。在 B1 中输入:

    =IF(A1=500,A1=750,A1

    这将生成一个代码 0 到 3 来表示四个级别

    在 C1 中输入:

    =B1

    在 C2 中输入:

    =IF(ABS(B1-B2)B1,B1+1,B1-1)) 并向下复制

    C 列实现了一步限制。最后在 D1 中输入:

    =CHOOSE(C1+1,"Basic","Standard","Standard+","Platinum") 并复制下来

    这会将代码转换为单词级别

    【讨论】:

    • 试图让我明白这一点我不确定我已经完全解释了这个人从给定级别的基本标准等开始,然后在 14 天内累积积分,然后根据他们的起点,他们向上向下移动或由于总点数保持不变,例如,从标准开始的人需要 >=750 才能上升到标准+ 500-749 才能保持不变或 =850 才能升到白金,750-849 才能留在 Standard+,如果
    【解决方案5】:

    我很难找到答案,但最终在我能够解决的建议的帮助下,这是完成的公式:

    =IF(AND(H4="Basic",G17<450),"Basic",IF(AND(H4="Basic",G17>=450),"Standard",IF(AND(H4="Standard",G17<450),"Basic",IF(AND(H4="Standard",G17>449,G17<700),"Standard",IF(AND(H4="Standard",G17>=700),"Standard+",IF(AND(H4="Standard+",G17>699,G17<800),"Standard+",IF(AND(H4="Standard+",G17<700),"Standard",IF(AND(H4="Standard+",G17>=800),"Platinum",IF(AND(H4="Platinum",G17<800),"Standard+","Platinum")))))))))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-20
      相关资源
      最近更新 更多