首页 文章

VBA Excel在两个不同的工作表中比较值

提问于
浏览
1

我希望比较位于不同工作表中的两列中的值 . 找到匹配项时,我想减少与匹配值位于同一行的第三列中的值 . 我知道如何在下面对其进行硬编码,但我不想在excel中的每一行都包含此代码 .

If Range("g12").Value = Worksheets("Inventory Levels").Range("b2").Value Then
    Worksheets("Inventory Levels").Range("c2").Value = Worksheets("Inventory Levels").Range("c2").Value - 1
End If

1 回答

  • 1

    您可以通过简单的循环执行此操作,请参阅我的注释以获取详细信息

    Dim i as Integer
    ' Use "With" to fully qualify your sheet objects.
    With ThisWorkbook
    ' Loop over rows 2 to 20 (change this as necessary)
    For i = 2 to 20
        ' Use ampersand (&) for concatenation of strings
        If .Sheets("Sheet1").Range("G" & (i + 10)).Value = .Sheets("Inventory Levels").Range("B" & i).Value Then
            .Sheets("Inventory Levels").Range("C" & i).Value = .Sheets("Inventory Levelts").Range("C" & i).Value - 1
        End If
    Next i
    End With
    

相关问题