你能帮我弄一个COUNTIF公式吗?
我有这些条件--就像我在应用过滤器一样:
Tablet和NA<>Duplicate TT (即选择所有期望重复的TT)Yes我使用了下面的公式,但计算错了:
With ActiveWorkbook.Worksheets("TT")
[AH124] = wf.CountIfs(.Range("K:K"), "Tablet", .Range("K:K"), "NA") + wf.CountIf(.Range("I:I"), "<>Duplicate TT") + wf.CountIf(.Range("G:G"), "Yes")
End With发布于 2017-02-14 11:19:11
您的第一个子句是问题,因为K列中没有值同时为Tablet和NA:
wf.CountIfs(.Range("K:K"), "Tablet", .Range("K:K"), "NA")所以你需要重新安排公式:
With ActiveWorkbook.Worksheets("TT")
[AH124] = wf.CountIfs(.Range("K:K"), "Tablet", .Range("I:I"), "<>Duplicate TT", .Range("G:G"), "Yes") + _
wf.CountIfs(.Range("K:K"), "NA", .Range("I:I"), "<>Duplicate TT", .Range("G:G"), "Yes")
End With发布于 2017-02-14 11:18:56
试试这个:
With ActiveWorkbook.Worksheets("TT")
[AH124] = wf.CountIfs(.Range("K:K"), "=Tablet", .Range("K:K"), "=NA") + _
wf.CountIf(.Range("I:I"), "<>Duplicate TT") + _
wf.CountIf(.Range("G:G"), "=Yes")
End With我在您的测试中添加了=,因为如果没有它,它将计数包含平板的所有单元格,NA,是的,.
发布于 2017-02-14 11:27:15
您的Range("I:I"), "<>Duplicate TT"将选择所有空白,直到工作表的底部,因此您应该将范围限制在底部行:Range("I2:I & Range("I" & Cells.Rows.Count).End(xlUp).Row), "<>Duplicate TT" (这假定您正在对第二行的检查进行声明,因为有标题),您可能也应该在您的公式的其余部分这样做。
https://stackoverflow.com/questions/42224624
复制相似问题