【问题标题】:VBA using SUMIFS with more criteriaVBA 使用具有更多标准的 SUMIFS
【发布时间】:2019-09-18 18:32:05
【问题描述】:

我在 VBA 中使用 SUMIFS 时遇到问题。问题是我需要使用 SUMIFS 来汇总数据集中的 1+ 个城市。

我尝试用谷歌搜索并使用 STackoverflow 并找到了两个我都尝试过的答案,但没有一个有效。其中之一是:

VBA - SumIfs with Or

Dim D As Double

D = WorksheetFunction.Sum(WorksheetFunction.SumIfs(Range("D2:D2000"), _
Range("A2:A2000"), Array("Århus", "København")))
MsgBox D

我希望得到一个数值结果,但我得到的结果是“运行时错误'13':类型不匹配”

【问题讨论】:

    标签: vba criteria sumifs


    【解决方案1】:

    这些需要后期绑定,因此请使用Application. 而不是WorksheetFormula

    根据@MathieuGuindon

    如果涉及的任何值是工作表错误,则应将结果捕获到 Variant 中,以防止在分配 D 时出现类型不匹配。

    Dim D As Variant
    
    D = Application.Sum(Application.SumIfs(Range("D2:D2000"), _
    Range("A2:A2000"), Array("Århus", "København")))
    If IsNumeric(D) Then MsgBox D
    

    【讨论】:

    • 如果涉及的任何值是工作表错误,则应将结果捕获到Variant 中,以防止在分配D 时出现类型不匹配
    • @MathieuGuindon 添加了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-02-04
    • 2014-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多