Application.WorksheetFunction.SumIfs 有列表对象

Application.WorksheetFunction.SumIfs with list objects

我有一个包含列表对象的工作表函数,但它没有给出正确的值。

输出始终为 0。

Sub volsumif()
    Application.ScreenUpdating = False
    Set wb2 = ThisWorkbook
    Set ws1 = wb2.Sheets("Dist_Summary")
    'Set a = wb2.Sheets("SALES").ListObjects("SALES").Range
    Set ws2 = wb2.Sheets("Dist_Perf Total Brands")
    Set ws3 = wb2.Sheets("SALES")
    'Set ws4 = wb2.Sheets("SALES_Target").ListObjects("SALES_TARGET").ListRows.Count
    Set ws5 = wb2.Sheets("Dump")
    Set ws6 = wb2.Sheets("Top_Accts")
    Set ws7 = wb2.Sheets("Per_Chn")

    //before ws3.range("Z:Z")

    ws2.Range("B83") = Application.WorksheetFunction.SumIfs _
        (ws3.ListObjects("SALES").DataBodyRange(0, 26), _
        ws3.ListObjects("SALES").DataBodyRange(0, 4), _
        ws2.Range("A82"))
End Sub

您是否正在尝试访问整个列作为 Sumifs 中的参数? 如果是这样,试试这个:

ws2.Range("B83") = Application.WorksheetFunction.SumIfs _
    (ws3.ListObjects("SALES").ListColumns(26).DataBodyRange, _
    ws3.ListObjects("SALES").ListColumns(4).DataBodyRange, _
    ws2.Range("A82"))