【问题标题】:Excel Function to Max out a cell before moving to the next cellExcel函数在移动到下一个单元格之前最大化一个单元格
【发布时间】:2017-06-15 13:14:06
【问题描述】:

如何从一个单元格中减去一个值直到它达到零(或某个数字),然后从另一个单元格中减少剩余的数量?我一直在研究,发现 MAX 功能会有所帮助,但是我不明白如何使用它。

例子:

Leave Requested: 12 hours
Bank A: 8 hours
Bank B: 15 hours

要求员工从 A 银行获得 8 小时的工资(直到达到零),然后从 B 银行支付剩余的小时数,即 4 小时,然后显示 (15-4) 11 小时的余额在银行B。在excel中有这个功能吗?

【问题讨论】:

  • 不能原地完成,需要将结果放到不同的单元格中或者使用vba。

标签: excel excel-formula max formula subtraction


【解决方案1】:

正如所指出的,如果您想获得值旁边的结果,可以使用以下方法:

B2:=MAX(0,A2-A1)
B3:=A3-A1+A2-B2

【讨论】:

  • 谢谢。这很有帮助......但是,我使用 C2 的 IF 条件来考虑银行 A 尚未被最大化的情况。
  • 抱歉 - 我指的是 C2,我指的是 B3,以便它对应于图像。应该不需要 IF 语句吧?
  • 一种简单的代数方式来思考它....开始时银行中的总额减去提款将等于最后的余额,即 A2+A3-A1 = B2+B3 .重新排列它,B3 = A2+A3-A1-B2。如果该人要求休假 2 小时,则 B2 中的计算将考虑到这一点,使余额为 6,而 B3 仍为 15。
【解决方案2】:

假设我们在 A 列中有一组银行,在 B 列中有它们的初始容量,如下所示:

将请求放在单元格 E1 中。在单元格 C2 中输入:

=MAX(0,B2-E1)

在C3中输入:

=MAX(0,B3-D2)

然后抄下来。在 D2 中输入:

=MAX(0,E1-B2)

在D3中输入:

=MAX(0,D2-B3)

然后抄下来:

C栏表示借记后银行的余额。 D 列表示借方后请求中的余额。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多