rav*_*avi 2 excel vba excel-vba sumifs
嗨,我正在编写VBA代码,以便 -
如果在范围D1:D20的任何单元格值中找到单元格M1的值,则在范围C1中找到相应单元格值的总和:C20.但我对如何使用该函数并传递参数感到困惑.这是我现在尝试过的,但它不起作用
Private Sub FindTotal()
Dim Temp2Sheet As Worksheet
Set Temp2Sheet = Sheets("Temp2")
Temp2Sheet.Activate
Dim temp As String
temp = Temp2Sheet.Range("M1").Value
Temp2Sheet.Range("N1").Value = Application.SumIf(Range("D1:D20"), "" * "&temp&" * "", Range("C1:C20"))
End Sub
Run Code Online (Sandbox Code Playgroud)
我需要将Range M1的相同逻辑扩展到有多少值,而M列是动态的.总计将出现在列M的相应单元格的N列中.如M1总计将在N1中,依此类推
我的主要困惑是如何将temp变量作为SUMIF函数的参数2传递并添加通配符(**)
任何帮助表示赞赏.提前致谢
这应该做你想要的,除非你正在寻找的东西不仅仅是找到基本的子串:
Private Sub FindTotal()
With Sheets("Temp2")
.Range("N1").Value = Application.SumIf(.Range("D1:D20"), _
"*" & .Range("M1").Value & "*", _
.Range("C1:C20"))
End With
End Sub
Run Code Online (Sandbox Code Playgroud)