文字列が別の列にも表示される場合にのみ、1 つの列のすべての値を数える方法がわかりません。例えば
A列
りんご
りんご
梨
プラム
オレンジ
オレンジ
キウイ
B列 洋ナシ
プラム
オレンジ
プラム
キウイ
列 A の Countif 数式は、列 B にないため、Apple 以外の列 A のすべてのセルをカウントするため、5 を返す必要があります。
文字列が別の列にも表示される場合にのみ、1 つの列のすべての値を数える方法がわかりません。例えば
A列
りんご
りんご
梨
プラム
オレンジ
オレンジ
キウイ
B列 洋ナシ
プラム
オレンジ
プラム
キウイ
列 A の Countif 数式は、列 B にないため、Apple 以外の列 A のすべてのセルをカウントするため、5 を返す必要があります。
でこれを行う方法は思いつきませんが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 を取得します。
- - - 編集 - - - -
余分な列を追加せずにこれを行う場合、1 つのオプションは、独自のカスタム関数 (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
この関数は 2 つの入力を受け取ります。countRange
とsearchRange
。countRange
は列 A のすべてのデータで、searchRange
列 B です (必ずデータのみを選択してください)。
データが上記のデータだけの場合、列 A のデータの下に置く数式は次のようになります。
=customCount(A2:A8,B2:B6)