49

スプレッドシートの列の出現回数を計算するための良いアプローチは何でしょうか?これは単一の配列数式で実行できますか?

例(列A入力、列BでありC自動生成されます):

|   A   |   B   |   C   |
+-------+-------+-------+
| Name  | Name  | Count |
+-------+-------+-------+
| Joe   | Joe   |     2 |
| Lisa  | Lisa  |     3 |
| Jenny | Jenny |     2 |
| Lisa  |       |       |
| Lisa  |       |       |
| Joe   |       |       |
| Jenny |       |       |
4

6 に答える 6

116

これに対するより簡単なアプローチ

列 B の先頭に、次のように入力します。

=UNIQUE(A:A)

次に、列 C で、次を使用します。

=COUNTIF(A:A, B1)

すべての行の列 C にコピーします。

編集:それがうまくいかない場合は、コンマの代わりにセミコロンを使用してみてください:

=COUNTIF(A:A; B1)
于 2013-03-09T11:03:29.970 に答える
49

試す:

=ArrayFormula(QUERY(A:A&{"",""};"select Col1, count(Col2) where Col1 != '' group by Col1 label count(Col2) 'Count'";1))


2014/07/22 先月のある時点で、スプレッドシートは埋め込み配列を使用して、より柔軟な配列連結のサポートを開始しました。したがって、ソリューションは次のようにわずかに短縮できます。

=QUERY({A:A,A:A},"select Col1, count(Col2) where Col1 != '' group by Col1 label count(Col2) 'Count'",1)

于 2012-09-02T05:21:35.933 に答える
41
=COUNTIF(A:A;"lisa")

条件を列 B のセル参照に置き換えることができます

于 2012-08-26T13:48:01.853 に答える
4

必要に応じてソートを追加するだけです

=QUERY(A2:A,"select A, count(A) where A is not null group by A order by count(A) DESC label A 'Name', count(A) 'Count'",-1)

ここに画像の説明を入力

于 2020-01-02T01:39:40.510 に答える