【问题标题】:Excel Formula If Statement - in between percentagesExcel 公式 If 语句 - 在百分比之间
【发布时间】:2016-07-28 18:59:59
【问题描述】:

这是我想要做的:

我有一列(比如说 A 列)百分比(范围从 100% 到 0%)。我有一个编号为 1-10 的第二列(比如说 B 列)。我想创建第三列,它将 B 列中的任何数字加在一起,如下所示:如果百分比是 99-90,则加 1。如果 89-80,则加 2。79-70,加 3。69-60 , 加 4. 59-50, 加 5. 49-40, 加 6. 39-30, 加 7. 29-20, 加 8. 19-10, 加 9. 低于 10, 加 10.

但是,我似乎无法正确编写它。任何帮助将不胜感激。

【问题讨论】:

  • 建议的解决方案是否对您有用?如果是这样,那么请承认,如果不是,那么请指出什么不适合你。谢谢。
  • 到目前为止他的工作很棒! - 谢谢你。但是,Miqi180建议的方法意味着即使百分比为100,它仍然在C列中添加“1”,这是我无法拥有的。如果百分比为 100,我不需要添加任何内容。您能提供更多帮助吗?
  • 这是不正确的。请在我的帖子下方查看我的评论以获得进一步的解释。

标签: excel if-statement excel-formula nested-if


【解决方案1】:

这就是我的做法。假设您使用的是 A 列和 B 列,并且数据从第 2 行开始。

=B2+IF(A2

另外值得注意的是,您声明百分比从 0% 到 100%,但 100% 不是您的任何数据分叉的一部分。

希望这行得通!

【讨论】:

  • 我没有足够高的声誉来评论@miqi180,所以我会在这里发表评论......他的回答肯定更好。我没有意识到实际上有一个推理或公式来确定你的阈值。我使用多个IF 语句的方式有一个小好处,那就是您可以控制分配给每个分叉的值。在这种特殊情况下,我绝对喜欢 FLOOR 选项。
  • 不客气。您可能还想做的一件事是将您的分叉放在一个包含阈值的小表中,并用对该表的 vlookups 替换硬值。它最初编写起来有点复杂,但可以让您轻松高效地更改分支。
【解决方案2】:

一个更简单的解决方案是可能的。如果您的百分比是从第 1 行开始的 A 列中从 0 到 1 的值,您可以通过在单元格 C1 中添加以下公式并将其复制粘贴到底行来获得所需的值:

=10*(1-FLOOR(A1;0,1))+B1

如果您的语言环境不是我的北欧,请将0,1 更改为0.1。

编辑

感谢pnuts,其他语言环境的正确语法实际上是将;0,1 更改为,0.1。

为了比较,我在前 10 行中使用了与 Nickstoy 相同的值。

示例

【讨论】:

  • @pnuts 谢谢。根据techonthenet.com/excel/formulas/floor.php 看来你是对的
  • 优秀。点就解决了。我猜你的措辞“可能需要”让我失望了:)
  • 感谢您的澄清。我很高兴我通常在 VBA 中编程,这不是问题,因为无论语言环境如何,语法总是相同的。
  • 是的。在语法或约定之间切换有点麻烦,但编译器会很快告诉你是否弄错了。在 SO 上通常也是如此;-)
  • 到目前为止,这非常棒! - 谢谢你。但是,Miqi180建议的方法意味着即使百分比为100,它仍然在C列中添加“1”,这是我无法拥有的。如果百分比为 100,我不需要添加任何内容。您能提供更多帮助吗?
猜你喜欢
  • 1970-01-01
  • 2021-10-17
  • 1970-01-01
  • 2017-01-01
  • 1970-01-01
  • 2012-11-11
  • 1970-01-01
  • 2015-04-22
  • 2015-10-03
相关资源
最近更新 更多