• ベストアンサー

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

下記のような事をやる数式が判らず、困っています。 晴 晴 晴 曇 曇 雨 雨 雨 上記で、重複するデータをひとつとカウントする方法(数式)を教えていただけますでしょうか? つまり、「晴」「曇」「雨」の3つ、という値を導き出したいのです。 CountIf等、色々やってみたのですが、できなくて・・・。 お手数をおかけしますが、よろしくお願い致します。

noname#35872
noname#35872

質問者が選んだベストアンサー

  • ベストアンサー
  • shiotan99
  • ベストアンサー率68% (140/203)
回答No.4

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から指定してください。 ★もちろん範囲内に空白セルがなくても正しい結果を返すので、式は多少長くはなりますがコレがいちばんオススメ!!です。 なら、はじめっからコレだけにしとけって言われそうですが‥

noname#35872
質問者

お礼

皆様、色々と教えていただき、とても助かりました。 本当にどうもありがとうございました。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

例データ A2:A13 晴 1 晴 晴 曇 2 雪 3 雨 4 雨 雨 霧 5 雹 6 雨 霧 ●作業列を使わない方法。 =SUM(IF(COUNTIF(OFFSET($A$2:$A$13,0,0,ROW(A2:A13)-1,1),A2:A13)=1,1,0)) と入れて、SHIFT+CTRL+ENTERを同時に押す。配列数式。 結果 6 ●作業列B列を使う方法 B2に=IF(COUNTIF($A$2:A2,A2)=1,MAX($B$1:B1)+1,"")を入れる。 それをB3:B13に式を複写します。 そのB列のMAXをとっても6が出ます。 =IF(COUNTIF($A$2:B2,B2)=1,1,"") として、その式を、B13まで式を複写し、SUMをとる手もあります。

  • shiotan99
  • ベストアンサー率68% (140/203)
回答No.2

こんにちは~ データが A1:A8にあるとして、 =SUMPRODUCT((MATCH(A1:A8,A1:A8,0)=ROW(A1:A8))*1) または =SUMPRODUCT(1/COUNTIF(A1:A8,A1:A8)) でどうでしょうか?

  • miwaharu
  • ベストアンサー率25% (29/112)
回答No.1

個数にもよりますが、ピボットテーブルで 並べ替えればいかがでしょうか?

関連するQ&A

  • エクセルのデータで重複をカウントしない方法

    現在アンケートデータが1000件ほどあり、重複しているデータがあります。 住所別、職業別集計一覧を=COUNTIFで作成しているのですが、 重複している分までカウントされてしまいます。 今後もデータは増え続けるのですが、重複(初回はカウント)しているデータをカウントしない方法はないでしょうか?

  • エクセル 重複データのカウント

    初めまして。 初めて質問いたします。 よろしくお願いいたします。 エクセルで、A列に7ケタの数字13万件         B列に同じく7ケタの数字100~2000件         C列にB列にデータがある行まで=COUNTIF($A$2:$A$130000,B2) 上記の状況で、C列の値は1か0しか出ない状態なので、 セルD1に=COUNTIF(B2:B2000,0)と入れてB列にあるけどA列にないデータの 数(重複していないデータ)をカウントしています。 しかしながら、ベースとなっているA列のデータが13万件と多いので、 再計算などに結構時間がかかっているので、どうにかならないかと思いまして 質問させていただきました。 ちなみに、A列のデータは少しずつ増えていきます。 1度B列にあってA列にないデータは、次にB列に違うデータを入れてカウントする際に 新規データとしてA列に追加しています。 なんとか処理が速くなる方法などありましたらご教授下さい。 よろしくお願いいたします。

  • EXCELでの重複データカウント方法について(過去問読みましたがわかりません)

    いつもお世話になっております。excel97の関数に関してです。 過去問を検索し、 http://oshiete1.goo.ne.jp/kotaeru.php3?q=118918において、 質問:会社名のデータが1万件あります。 その中には、同じ会社名が重複しているものがあります。 そこで、重複しているデータは1つのものとしてカウントし、全部で何件の会社が存在するかカウントする方法はあるでしょうか? 回答:関数でやるとすると。。。。 データが、A1~A10に入っているとします。 =SUMPRODUCT(1/COUNTIF(A1:A10,A1:A10)) とA11に数式を入力します。 これではいかがでしょうか?? 解説 COUNTIF関数でそれぞれの会社の数をカウントし、 SUMPRODUCT関数で配列の積をもとめます。 というのがあり、未熟者の私は理屈はよく分からないまま、この式でやってみたあと実際に数えてみたのですが、いつも正解数より1多くなってしまうのですが、この式の最後に-1を付ければいいのかな? と思ったのですが、いかがでしょうか?

  • EXCELでの重複データカウント方法について

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

  • データの重複を防ぎたい!!

    A列へのデータの重複を防ぐ為に、 データ→入力規則→ユーザー設定の数式に =COUNTIF(A:A,A1)=1と入力 しかしA列へは他から値を反映させているからなのか、うまくいきません!! 直接入力はうまくいくんですが・・・・・。 何か方法があれば教えて下さい!! エクセル2003です。よろしくおねがいします。

  • Excel 重複データーのカウント

    Excelの関数に対する質問です。   =COUNTIF(A1:E1,A1) はA1と重複するデータを求めますが、この方法ではなく A B C D E 0 A A B C D 1 A A B C C 2 このように 行に重複するデータのデータ件数をいっきに求められる関数があるのでしょうか? それともそれぞれのデータを=COUNTIF(A1:E1,A1)~でそれぞれもとめた後、それを合計しなければならないのでしょうか? よろしくお願いします。

  • データの無いセルをカウントしない方法

    下記の数式で、各数字の合致数を求めて表示しています。 =SUMPRODUCT(COUNTIF(I4:J4,B2:C3000)) 求めるデータ数が、毎回違う為、範囲をB2:C3000としています。 データがC3000迄無い場合、空欄のセルをゼロと認識して、ゼロのカウントが増えてしまいます。 空欄の部分は、ゼロとしてカウントせず、データが入っている部分だけカウントする方法はありますでしょうか? ご教授、宜しくお願いします。

  • Excel2010重複しないカウントとフィルタ結果

    Excel2010で、重複しない文字をカウントしつつ、オートフィルターで 抽出をかけた時には表示したデータをカウントする関数を作成したいのですが うまくできません。 作成しているExcelの表には、オートフィルターが設定されています。 A列には複数名の人の名前が入っていて、名前には重複もあります。 オートフィルターでの抽出条件が指定されていない状態で A列の重複しない人数を下記数式で出しています。  =SUMPRODUCT(1/COUNTIF(A1:A100,A1:A100)) オートフィルターで、例えばA列で3人の名前を抽出した場合に、 上記数式が入っているセルに「3」と表示をさせたいのですが できますでしょうか? できれば作業列を使用することなく、ダイレクトに該当セルに算出できる方法が あれば知りたいです。 お分かりの方いらっしゃいましたらご教示頂けると助かります。 どうぞよろしくお願いいたします。

  • エクセル 重複しないで 条件付きカウント

    下記の様なデータがエクセルシートに入力されていて、 品番事(重複させずに)に全て入荷したら 入荷終了にカウントしたいのですが、どのような条件でカウントしたら良いのでしょうか? 下記の場合、入荷終了を”1”と表示したいです。 (同品番は、重複しないで1品番として、且つ入荷日全てに日付が入力されている物だけをカウント。また、品番は不特定多数(1,500品以上)となります。) 宜しくお願い致します。 品番  入荷日   入荷終了 11  6/1    1 11 11 22  6/3 22  6/5 33 33  5/3 ・ ・ ・ ・

  • Excel 2007 重複データのチェックについて

    Excel 2007 重複データのチェックについて A列にあるデータ(約100件)で重複している値がある 行についてB列にフラグをつけます。 やりたいことはどの行とどの行が重複しているのかを すぐに分るようにしたいです。 添付画像のように重複している行に番号をつけていくことは可能でしょうか。 番号は1から順番に増えていきます。 自分は下記を考えましたが、これでは重複している行に「重複データ」と入る だけでわかりづらいです。 =IF(COUNTIF($A$2:A2,A2)>1,”重複データ”,”○”) よろしくお願いいたします。

専門家に質問してみよう