web-dev-qa-db-ja.com

Excelで値が含まれている場合にセルをカウントする方法

私はこのようなExcelシートを持っています:

_ID  | Relations
----+----------------
1   | ,
2   | ,
3   | ,1,
4   | ,1,2,
5   | ,2,
6   | ,3,
7   | ,1,2,4,
8   | ,1,2,4,5,6,
9   | ,2,4,5,1,
_

RelationsRelated Count列としてカウントしたい-見つかったかどうかをチェックする_,ID,_ inRelationsはtrueです-次のような結果を達成するための式を使用します。

_ID  | Relations     | Related Count
----+---------------+----------------
1   | ,             | 5               '>> related in: 3,4,7,8,9
2   | ,             | 5               '>> related in: 4,5,7,8,9
3   | ,1,           | 1               '>> related in: 6
4   | ,1,2,         | 3               '>> related in: 7,8,9
5   | ,2,           | 2               '>> related in: 8,9
6   | ,3,           | 1               '>> related in: 8
7   | ,1,2,4,       | 0
8   | ,1,2,4,5,6,   | 0
9   | ,2,4,5,1,     | 0
_

編集:
countif()関数の使用方法を知っています。関連カウント列の式を見つけるのを手伝ってください。
前もって感謝します。

2
shA.t

COUNTIFは、セル全体に対して値を完全に一致させます。「含む」関数のようには機能しません。ただし、ワイルドカードはセル内の他のすべてを表すため、回避策としてワイルドカードを使用できます。したがって、COUNTIFを使用して目的を達成でき、配列数式は必要ありません。

enter image description here

C2の式:

=COUNTIF($B$2:$B$10,"*,"&A2&",*")

これはA2値をコンマで囲むため、1桁に限定されません。次に、アスタリスクは前後のその他のものを表します。

2
fixer1234

この回答は、IDが9つしかない場合に機能します。

=SUM(IF(ISNUMBER(FIND(A2,B:B)),1,0))

これは、Bのすべてのセルのコンテンツ内でA2を検索することで機能します。これは、一致するコンテンツ全体を検索するという点でCOUNTIFとは異なります。次に、IFとISNUMBERは、番号が見つかったセルごとに1を返し、それ以外の場合は0を返します。次に、SUMを使用して1と0を追加します。

これは配列数式であるため、ワークシートに入力した後、Ctrl、Alt + Enterを押す必要があります。

これが機能していることを示すスクリーンショット:

proof

10、11などに移動するIDとリレーションがある場合、10の最初の桁として1が検出され、1の結果に影響するため、機能しません。

1
RickyTillson

データセットが_A1_で始まる場合は、=COUNTIF(Range to count; Parameter to find)を使用する必要があります。

=COUNTIF($B$2:$B10; $A1)および列Cに入力する必要があります

乾杯

0
dmb