countif字符串出现在另一列中

时间:2013-09-19 20:16:12

标签: excel-2010 countif

我似乎无法弄清楚如果字符串也出现在另一列中,如何计算1列中的所有值。例如

A栏 苹果
苹果

梅花
橙色
橙色
猕猴桃

B栏 梨
梅花
橙色
梅花
猕猴桃

A列的Countif公式应该返回5,因为它计算A列以外的每个单元格,因为它不在B列中。

1 个答案:

答案 0 :(得分:0)

我无法想到使用COUNTIF执行此操作的方法,但如果您能够在数据中添加其他列,则可以执行以下公式。

=IF(OR(A2=$B$2:$B$6),1,0)

请务必按住 Ctrl + Shift ,然后在输入公式后按 Enter ,因为这是一个数组。

A          B          C
Apple    Pear      =IF(OR(A2=$B$2:$B$6),1,0)
Apple    Plum
Pear     Orange
Plum     Plum
Orange   Kiwi
Orange
Kiwi

然后,您可以在C列中为A中的每个值运行此公式。最后,对C列中的所有值求和以获得预期值5

------ -------- EDIT

如果要在不添加额外列的情况下执行此操作,可以选择添加自己的自定义函数(UDF)。打开VBA编辑器,添加UDF所在的模块,然后复制并粘贴以下代码

Function customCount(countRange As Range, searchRange As Range)
Dim count As Integer
count = 0
For Each cell In countRange
    If Not searchRange.Find(cell) Is Nothing Then
        count = count + 1
    End If
Next cell
customCount = count
End Function

此功能需要两个输入; countRangesearchRangecountRange是A列中的所有数据,searchRange是您的B栏(确保只选择数据)

如果您的数据只是上面的数据,那么您将放在列A数据下面的公式将是以下

=customCount(A2:A8,B2:B6)