首页 > 解决方案 > Excel VBA CountIfs 运行时错误 1004

问题描述

我正在尝试根据用户确定的观察结果和箱并使用以下代码得出观察频率

Sub Button()

Set obs = Application.InputBox("Observations", Type:=8) 'select w/o label
Set bins = Application.InputBox("Bins", Type:=8) 'select w/o label

binsrow = bins.Rows.Count

For i = 1 To binsrow

    bins.Cells(i, 1).Offset(0, 1) = WorksheetFunction.CountIfs(obs, ">" & bins.Cells(i, 1), "<=" & bins.Cells(i + 1, 1))

Next i

End Sub

当我像上面那样运行它时,我得到运行时错误“1004”。但是,当我省略出现在 CountIfs 中的条件之一时,它会完全按照代码的说明进行操作。

标签: excelvba

解决方案


您需要第二个条件的第二个范围参数。也许

WorksheetFunction.CountIfs(obs, ">" & bins.Cells(i, 1), obs, "<=" & bins.Cells(i + 1, 1))

推荐阅读