以下是两个工作表的片段
这是我在第一张表中的代码,用于更改下拉列表的选择。会有更多案例,但我的问题在于SUMIF。任何时候Sheet2上的B列与Sheet2上的相应列A项匹配,在Sheet2上与C列相加。
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("D1")) Is Nothing Then
Select Case Range("D1")
Case "2014-2015": Cells(2, "B") = WorksheetFunction.SumIf(Worksheets("2014-2015").Range("B2:B22"), A2, Worksheets("2014-2015").Range("C2:C22"))
Case Else: Cells(2, "B") = 8
End Select
End If
End Sub
问题是它总是返回0.希望有关编辑代码的帮助,以使其显示正确的总数。
谢谢,
答案 0 :(得分:2)
看起来问题在于它尝试匹配的值,仅在A2
公式中指定为Sumif
。它无法识别您要匹配单元格A2中的值。需要使用类似于Worksheets("SummarySheet").Range("A2").Value
的引用来引用该函数的其他参数。