我希望比较位于不同工作表中的两列中的值。找到匹配项时,我想减少与匹配值位于同一行的第三列中的值。我知道如何在下面对其进行硬编码,但我不想在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
答案 0 :(得分: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