Vba application.worksheet.function,用于计算列中大于另一列的单元格数

Vba application.worksheet.function,用于计算列中大于另一列的单元格数,vba,excel,vb6,Vba,Excel,Vb6,我需要你的帮助!如果列中的一个为零,则如何设置一个条件,使列E中的单元格计数大于或等于列f中的单元格计数 A | B | C | D | E | F --------+-------+-------+-------+-------+-------- A1021 | A10 | A | RX1 | 99 | 98 '-------> 1' A1021 | A10 | A | RX1 | 0

我需要你的帮助!如果列中的一个为零,则如何设置一个条件,使列E中的单元格计数大于或等于列f中的单元格计数

A       |   B   |   C   |   D   |   E   |   F
--------+-------+-------+-------+-------+--------
A1021   |   A10 |   A   |   RX1 |   99  |   98 '-------> 1'
A1021   |   A10 |   A   |   RX1 |   0   |   98
A1021   |   A10 |   A   |   RX1 |   99  |   98
A1021   |   A10 |   A   |   RX1 |   99  |   0
A1021   |   A10 |   A   |   RX1 |   98  |   98 '------> 1'

答案是2

您的示例中的第3行如何?99>98,看起来与第1行类似。我希望您可以将此公式转换为application.worksheetfunction.sumproduct sumproduct(--(A:A>B:B))@alkatraz,与发布的sumproduct变量
'First variant
'========================================================================
    Sub test()
    Dim N As Long, LastRow As Long, ocell As Range
    N = 0
    LastRow = Cells(Rows.Count, 5).End(xlUp).Row
    For Each ocell In ActiveSheet.Range("E1:E" & LastRow)
        If ocell.Value >= ocell.Offset(, 1).Value And _
            ocell.Value > 0 And ocell.Offset(, 1).Value > 0 Then
        N = N + 1
        End If
    Next
    MsgBox N
    End Sub
'Second variant
'========================================================================
    Sub test2()
    Dim v As Long
    v = Evaluate("sumproduct((E:E>=F:F)*(E:E>0)*(F:F>0))")
    MsgBox v
    End Sub