如果value小于0,则从单元格中减去一个值

时间:2017-01-01 16:07:05

标签: excel excel-formula

我想在Excel工作表中包含一列数值,如果某个特定单元格的值小于0,则从另一个单元格的值中减去此负值。例如:

D5包含值300。

D6包含值5 - 无需从D5中减去。

D7包含值-1 - 现在减去:D5-D7(或实际D5 +( - D7),D5的结果:299)。

D8包含值0 - 无需减去。

D9包含值-100 - 现在减去:D5-D7-D9(D5的结果:300-1-100 = 199)。

依此类推,等等......

我怎样才能实现?

1 个答案:

答案 0 :(得分:2)

更改值需要nacro。如果我们从:

开始

enter image description here

首先选择单元格 D5 并运行此短宏:

NULL

这将产生:

enter image description here

您可以通过使用单独的单元格来保持减小的值来避免使用宏。例如,在单元格 E5 中输入:

Sub DecreaseValue()
    Dim N As Long, i As Long, M As Long

    N = Cells(Rows.Count, ActiveCell.Column).End(xlUp).Row
    M = ActiveCell.Column

    For i = ActiveCell.Row + 1 To N
        If Cells(i, M).Value < 0 Then
            ActiveCell.Value = ActiveCell.Value + Cells(i, M).Value
        End If
    Next i
End Sub

enter image description here