[英]VBA : Sumifs returning zero
我的脚本 VBA 有一个大问题,我想创建一个脚本 VBA,它可以在工作表上计算某些单元格的总和,并根据某些标准将它们显示在另一张工作表上。
但是函数SumIfs
返回零值。
这是我的脚本:
If Worksheets("Test").Range("B2").Text = Worksheets("Nomen").Range("K3").Text Then
Worksheets("Test").Range("C23").Value = Application.WorksheetFunction.SumIfs(Worksheets("DETAILS").Range("H2:H174"), Worksheets("DETAILS").Range("B2:B174"), Worksheets("Nomen").Range("K3"), Worksheets("DETAILS").Range("J2:J174"), Worksheets("Test").Range("C2")
End If
您正在尝试对文本求和,因此为零。
我放入了变量以便于调试。
Sub test()
Dim wb As Workbook
Set wb = ThisWorkbook
Dim sumRange As Range
Set sumRange = wb.Worksheets("DETAILS").Range("H2:H174")
Dim critRange1 As Range
Set critRange1 = Worksheets("DETAILS").Range("B2:B174")
Dim crit1 As Variant
crit1 = Worksheets("Nomen").Range("K3")
Dim critRange2 As Range
Set critRange2 = Worksheets("DETAILS").Range("J2:J174")
Dim crit2 As Variant
crit2 = Worksheets("Test").Range("C2")
MsgBox Application.WorksheetFunction.SumIfs(sumRange, critRange1, crit1, critRange2, crit2)
End Sub
如果我用 1 填充每个范围并尝试匹配一个,我会得到 174。 如果我用“A”填充 sumRange,就像你使用文本一样,我得到 0。即如果我用 A 替换所有的 1。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.