sumif代码在使用列号时返回错误?

时间:2014-05-22 03:23:54

标签: vba excel-vba excel

我有一个简单的问题......不确定我做错了什么。

我希望根据excel的另一个标签中的数据更新sumif中的命名范围(单个单元格)。公式应该通过第2列查找日期并对第10列中的任何值求和。

即使我用实际的硬列字母替换列,我得到错误1004方法范围的对象工作表失败。如何重新编码以从另一个标签中获取sumif数据?

这是我的代码

with data_ws
   date = #5/13/2014#
   [named_range] = worksheetfunction.sumif(.range(.columns(2)), date, _
      .range(.columns(10))
end with

1 个答案:

答案 0 :(得分:0)

你很亲密,可能从下面有一个想法,为什么你的工作不起作用:

Sub TestSumIf()
    Dim oRngA As Range, oRngB As Range
    With ActiveCell
        .ClearContents
        Set oRngA = .Columns(2).EntireColumn ' 1st EntireColumn on the right
        Set oRngB = .Columns(3).EntireColumn ' 2nd EntireColumn on the right
        .Value = WorksheetFunction.SumIf(oRngA, Date, oRngB)
    End With
End Sub

样品:

SampleData