会社名のデータが1万件あります。
その中には、同じ会社名が重複しているものがあります。
そこで、重複しているデータは1つのものとしてカウントし、全部で何件の会社が存在するかカウントする方法はあるでしょうか?

A 回答 (3件)

1)集計したSHEETを全選択してコピー


2)別のSHEETに形式を選択して貼り付け(値だけ)
3)会社名カラムで、[データ]-[フィルタ]-[オートフィルタ]
4)出てきた三角形をクリックして、(オプション)
5)「個数」で「終わる」を選択してフィルタ実行
6)コピーして別のシートに貼り付け

EXCELのバージョンによって(6)の動作は変るかもしれません。
上手くいかなかったら、セルで選択してコピー、列で選択してコピー、行で選択してコピー、全部試してみてください。

それでもだめなら、
(1)集計行の前に一列追加
(2)追加した空の列に =RIGHT(B1,6) と入力(注:B1は会社名のセル)
   これで、追加した列は「データの個数」と表示されるはず
(3)(2)を全行にコピー
   つまり、集計行の頭には「データの個数」が並ぶ。他の行はブランク。
(4)追加した行を[データ]-[並べ替え]

これで、集計行だけが一箇所にあつまるはず
   
    • good
    • 3
この回答へのお礼

kuro_73さん
ありがとうございました!出来ました!
オートフィルタのオプションでこの様な指定をするとは。
大変勉強になりました。
ありがとうございます。

お礼日時:2001/08/15 13:24

関数でやるとすると。

。。。

データが、A1~A10に入っているとします。

=SUMPRODUCT(1/COUNTIF(A1:A10,A1:A10))

とA11に数式を入力します。
これではいかがでしょうか??

解説

COUNTIF関数でそれぞれの会社の数をカウントし、
SUMPRODUCT関数で配列の積をもとめます。
    • good
    • 2
この回答へのお礼

stpopoさん
ご回答ありがとうございます!
出来ました。件数が出ました。
SUMPRODUCTの使い方が難しいですね。
使ったことありませんでした・・・
大変勉強になりました。ありがとうございます。

お礼日時:2001/08/15 13:26

単純な方法としては、会社名の入っている列を選択して


[データ]-[集計]で、[集計の方法]を「データの個数」に指定する方法です。

ただこの場合、同じ名前で住所が違う会社等の考慮がなされないこと、
同じ会社でも、半角-全角や大文字-小文字、ブランクの有無等
色々な理由で別にカウントされてしまいます。

本来ならちょっと器用な人に、VBM(VisualBasicMacro)でマクロを組んでもらうのが一番確実ではないでしょうか。

この回答への補足

kuro_73さん早速のご回答ありがとうございました!
実はさらに質問があります。。。
集計の処理はやってみたのですが、その結果を折りたたむことができますよね。
それで、その折りたたんだ結果を、コピーして値複写で貼り付けてみると、折りたたまれた全ての内容が展開されてしまいます。
小計欄(折りたたまれた状態)だけをきれいに、持ってくることはできるでしょうか?
よろしくお願いします!

補足日時:2001/08/15 11:38
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QExcel 重複データを含むデータ数のカウント

Excel2003を使用しています。

重複データを1つとして数え、セルK12:K473の範囲(空白セルあり)にあるデータの個数を求める数式を過去の質問を参考にして、下記のように入力しました。

【数式1】
=COUNT(INDEX(1/(MATCH(K12:K473,K12:K473,0)=ROW(K1:K462)),0))

→結果は44でした。


空白セルを除いた状態のK列のデータをM列にコピペし、これも過去の質問を参考にして、下記のように入力しました。

【数式2】
=SUMPRODUCT((MATCH(M12:M84,M12:M84,0)=ROW(M1:M73))*1)

→結果は43でした。

職場で使用しているシステムへの入力漏れがないかをチェックしたくて、上記のようなことをしたのですが、入力した件数をシステムで検索した結果は43件でした。
最初は【数式1】で得た結果とシステムでの検索結果が合わないので、ひとつひとつ確認したのですが、入力漏れもなかったので、試しに【数式2】で調べてみると、システムでの検索結果と合致しました。

【数式2】では空白セルを含む場合はエラーが出るようでしたので、【数式1】でチェックしようとしたのですが、正しい結果が得られなかったのは、私の入力した【数式1】が間違っているのでしょうか?

Excel2003を使用しています。

重複データを1つとして数え、セルK12:K473の範囲(空白セルあり)にあるデータの個数を求める数式を過去の質問を参考にして、下記のように入力しました。

【数式1】
=COUNT(INDEX(1/(MATCH(K12:K473,K12:K473,0)=ROW(K1:K462)),0))

→結果は44でした。


空白セルを除いた状態のK列のデータをM列にコピペし、これも過去の質問を参考にして、下記のように入力しました。

【数式2】
=SUMPRODUCT((MATCH(M12:M84,M12:M84,0)=ROW(M1:M73))*1)

→結果は43でした。

職...続きを読む

Aベストアンサー

>空白セルを除いた状態のK列のデータをM列にコピペし、

どのような操作で空白セルをのぞいたのでしょうか?

元データがエクスポートしたデータ数式や得られた値を「値」に変換した場合は、空白セルが文字数0の文字列となることがあります。
このとき、オートフィルタで「空白セル以外」を選択すると、本当の空白以外の空白文字列も選択対象になる(実際の空白セルと同じとみなされる)ので、実際に文字列が入力されたデータだけを抽出できます。

しかし、元データには空白文字列が混入している場合は、実際の値よりも1大きい値が表示されることになるわけです。

このような場合は、その列を選択して。「データ」「区切り位置」で「完了」すると、空白文字列を本当の空白セルに変更できます。

これを確認するには、どこかのセルに「=TYPE(空白に見えるセル)」の数式を入力するとで2が返ります。

QEXCEL 重複するデータを1としてカウントする方法

以下のような、ある施設の利用者一覧表です。

A列には利用した日にち、B列には利用者のIDがあります。

A   | B
日にち | ID
01/10 | 0001
01/10 | 0002
01/13 | 0001
01/15 | 0003
01/17 | 0001

これをEXCELで延べ人数ではなく、同じIDが複数回出てきても1とカウントしたいのですが方法が分かりません。
上記の表では0001、0002、0003しかありませんので3という数字を求めたいのです。

出来れば作業列を使いたくないのですが、やむをえない場合はしょうがないかなと思います。

宜しくお願いします。

Aベストアンサー

#7です
◆すでに同じ回答をzap35さんがされていました
◆大変失礼しました

◆文字列または数値で途中空白があってもよい方法で別の式(少し長いですが)
=INT(SUMPRODUCT(1/SUBSTITUTE(COUNTIF(A1:A100,A1:A100),0,100)))

◆もし、ID番号が数値であればこんな方法も
=COUNT(1/FREQUENCY(A1:A100,A1:A100))

Qエクセルで重複データをカウントしたい

エクセルで下記のような表があり2000件くらいのデータがあります。
毎月出すシートの為、数は流動的です。(500~3000くらいです)
----
A  |B  |C  |
名前 | 性別|お菓子|
ひろし| 男 | 飴 |
けんじ| 男 | ガム|
けんじ| 男 |チョコ|
えみこ| 女 | ガム|
太郎 | 男 | 豆 |
よしえ| 女 |チョコ|
えみこ| 女 |チョコ|
----
全体の人数を知るには
SUM(IF(A2:A2000<>"",1/COUNTIF(A2:A2000,A2:A2000),0)
の配列関数でカウントできますが、男女別の人数を知るにはどのような関数を入れればでるでしょうか。

男 3 人
女 2 人

のような結果がほしいです。

よろしくお願いします。

Aベストアンサー

=SUM(IF(A2:A2000<>"",(B2:B2000="男")/COUNTIF(A2:A2000,A2:A2000),0))

でいかがでしょう?

Q【Excel】重複データのカウント方法

A列に「ID」、B列に「種別」を設定した場合、
C1セルに「種別」の重複を除いた“果物”の合計を
出したいのですが、どのような関数にすればいいのでしょうか。

なお、1つのIDの中にある「種別」は必ず1種類となります。
下図の、重複を除いた果物の合計数は「3」(ID=10001、10002、10004)
と黄色付したC1セル出したい次第です。

Aベストアンサー

サンプルの通りIDが数値で記入してある前提で。
C1に
=COUNT(0/FREQUENCY(IF(B2:B15="果物",A2:A15),IF(B2:B15="果物",A2:A15)))
と記入して,コントロールキーとシフトキーを押しながらEnterするなど。




#別のもっと簡単な方法:
C2に
=IF(AND(B2="果物",MATCH(A2,A:A,0)=ROW(A2)),A2,"")
以下C15までコピー
C1:
=COUNT(C2:C15)

Qエクセルでの重複データをひとつにカウントする方法

下記のような事をやる数式が判らず、困っています。










上記で、重複するデータをひとつとカウントする方法(数式)を教えていただけますでしょうか?
つまり、「晴」「曇」「雨」の3つ、という値を導き出したいのです。

CountIf等、色々やってみたのですが、できなくて・・・。

お手数をおかけしますが、よろしくお願い致します。

Aベストアンサー

No.2です。ちょっと説明不足だったので補足しておきます。

No.2の最初の数式
=SUMPRODUCT((MATCH(A1:A8,A1:A8,0)=ROW(A1:A8))*1)

ROW(A1:A8) の A1:A8ですが、これはデータ範囲ではありません。
データが1行目以外から始まっている場合、
たとえば A2:A50にデータがあっても、ROW(A2:A50) とすると結果は 0になります。
ROW の( )内=引数は、セルの個数を指定してください。
A2:A50 がデータ範囲なら、セルの個数は 49個なので、ROW(A1:A49) とします。
必ず 1から指定してください。

データ範囲が A2:A50なら
=SUMPRODUCT((MATCH(A2:A50,A2:A50,0)=ROW(A1:A49))*1)

となります。

それと、No.2の 2つの式は両方とも、指定した範囲内に 1つでも空白セルがあるとエラーになります。
範囲内に空白セルがある場合とか、
いまは A2:A50にしかデータは入っていないけれど、今後もデータが増えるので、あらかじめ範囲を広くとっておきたいというような場合、
=COUNT(INDEX(1/(MATCH(A2:A100,A2:A100,0)=ROW(A1:A99)),0))

を試してみてください。
これも ROW の引数は、指定範囲のセルの個数です。
A2:A100 のセルの個数は 99個なので、A1:A99 と指定します。
データが何行目から始まっているかに関係なく、必ず 1から指定してください。
★もちろん範囲内に空白セルがなくても正しい結果を返すので、式は多少長くはなりますがコレがいちばんオススメ!!です。
なら、はじめっからコレだけにしとけって言われそうですが‥

No.2です。ちょっと説明不足だったので補足しておきます。

No.2の最初の数式
=SUMPRODUCT((MATCH(A1:A8,A1:A8,0)=ROW(A1:A8))*1)

ROW(A1:A8) の A1:A8ですが、これはデータ範囲ではありません。
データが1行目以外から始まっている場合、
たとえば A2:A50にデータがあっても、ROW(A2:A50) とすると結果は 0になります。
ROW の( )内=引数は、セルの個数を指定してください。
A2:A50 がデータ範囲なら、セルの個数は 49個なので、ROW(A1:A49) とします。
必ず 1から指定してください。

デー...続きを読む


このQ&Aを見た人がよく見るQ&A

このカテゴリの人気Q&Aランキング

おすすめ情報