【问题标题】:Excel IF condition changes values of a range in 2 other columns with another IFExcel IF 条件用另一个 IF 更改其他 2 列中的范围值
【发布时间】:2018-03-06 02:58:42
【问题描述】:

我试图找到一种方法来更改我当前单元格上方的 2 列值,如果我在第三列上的单元格的值是“回报”,例如

【问题讨论】:

  • 你试过了吗?听起来您只需要一个基本的IF 函数调用。
  • AFAIK 您不能使用公式来更改另一个单元格中的值。你必须为此使用宏。如果您可以使用公式,您将在此处找到解决方案:stackoverflow.com/questions/20485036/…
  • 我不认为 IF 可以帮助我更改另一个单元格上的值..

标签: excel if-statement excel-formula vba


【解决方案1】:

在当前单元格上方的 2 列单元格中使用以下公式,似乎当前单元格地址为:A5

If(A5="payoff","return true condition", "return if false")

并且随着公式扩展,A5 是相关的并自动更改。

或者使用下面的宏,写在相关的工作表模块中,如果你的操作系统是Windows,使用Alt+F11

在下面假设您的工作表名称是Sheet1

您需要的列索引是12(使用列索引)

Private Sub Worksheet_Change(ByVal Target As Range)
    If ActiveSheet.Name = "Sheet1" Then
        If (Target.Column = 1 Or Target.Column = 2) And Target.Value = "payoff" Then
            Cells(Target.Row - 1, Target.Column).Value = "Destination value1 if condition"
            Cells(Target.Row - 2, Target.Column).Value = "Destination value2 if condition"
        End If
    End If
End Sub

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-12
    • 2012-04-10
    • 1970-01-01
    • 2014-01-07
    • 2017-08-05
    • 2019-02-18
    • 2021-09-06
    相关资源
    最近更新 更多