我想添加包含单词" WAGES"如果G列中的单元格包含单词" WAGES"将显示金额(列j)。如果有2个或更多个单元格包含" WAGES"然后他们各自的金额将被添加。这是我的代码:
Dim i As Integer
Dim x As String, name As String
Dim a As Double, b As Double
x = "WAGES"
i = 3
Do Until Sheets("SHIPNET").Cells(i, 7) = ""
name = Sheets("SHIPNET").Cells(i, 7)
If InStr(1, name, x, 1) Then
a = Sheets("SHIPNET").Cells(i, 10).Value
i = i + 1
End If
If InStr(1, name, x, 1) Then
b = Sheets("SHIPNET").Cells(i, 10).Value
i = i + 1
End If
i = i + 1
Loop
Sheets("MACRO TEMPLATE").Cells(5, 3) = a + b
我的代码仅限于包含" WAGES"的2个单元格。反正有没有让它变得动态而不是只找到2个细胞?
在图片的情况下,将添加-28,622.20和-50,372.64。
答案 0 :(得分:2)
为什么不使用带有通配符的SUMIF
?
一行代码替换整个事物。
Sheets("MACRO TEMPLATE").Cells(5, 3) = worksheetfunction.SumIf(Sheets("SHIPNET").Range("G:G"),"*WAGES*",Sheets("SHIPNET").Range("J:J"))