- 締切済み
【エクセル】重複データを見つける?関数
前月の実績を表した以下の様な統計表が1シートであります。 A B C D E F … 1 xx 6 aa 3 zz 6 2 aa 3 yy 2 aa 3 3 zz 6 bb 4 bb 4 4 yy 2 cc 1 xx 6 5 ・ この表の見方は、A列とB列、C列とD列・・・とペアになっていてA&B列が某月の1日、C&D列が某月の2日…を表しています。 xxとかaaというのがIDみたいなもので、その右のセルの数字は、その月に合計で何回メールを送信したかを表しています。 上の表で具体的に説明しますと、ID「xx」は今月合計で6回メールを送信したということを表しています。ID「aa」だと3回ということです。 また表を縦に見て、某月1日にメールを送ったのはID「xx」「aa」「zz」「yy」だという事も表しています。 注意して欲しいのは、ID「xx」が某月1日に6回メールを送ったのではなく、某月一ヶ月間の合計で6回送ったという事を表しているということです。 この表を使ってやりたいことは、某月にメールを送信した回数の多いIDベスト10を知りたいのです。 実際にはこの表は膨大(1シート内ですが)で数千のIDがある事に加え、更にIDが重複して(上の表だとID「xx」が1日と3日にある)しまっているために、ベスト10を調べるのに目視で確認している状況です。 (ある列を並び替えて回数の多かったIDが他の列で重複していないか一つずつ確認しています・・・) こういった表で、簡単に上位が判る関数などの方法があれば教えていただきたく質問しました。 どうぞ宜しくお願いします。 説明がわかりにくかったかもしれません。 補足致しますのでわかりにくかった点がございましたらご指摘ください。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- Wendy02
- ベストアンサー率57% (3570/6232)
こんばんは。 早い話、重複のないIDリストがあればよいのでは? こちらは、関数の処理で考えてみました。 それで、COUNTIFなどで出せるわけでよすね。 別のシートに、 以下の「4」という数字は、行数ですから、データの行数を入れてください。 A1: =OFFSET(Sheet1!$A$1,MOD(ROW(A1)-1,4),INT((ROW(A1)-1)/4)*2) B1: =OFFSET(Sheet1!$A$1,MOD(ROW(A1)-1,4),INT((ROW(A1)-1)/4)*2+1) この二つを、ドラッグで、下にコピーして、全部のリストを最初に出してしまいます。値等がなければ、「0」が出てきます。 次に、 C1: =IF(COUNTIF($A$1:A1,A1)=1,A1,"") D1: =IF(C1<>"",B1,"0") で、出して、重複を省いてしまい、後は、コピーして、形式を選択して貼り付け-値-次に、抽出した数で、データ-並べ替え D例-降順。「0」が下にあるので、それを削除します。
- ka_na_de
- ベストアンサー率56% (162/286)
他の方法を紹介します。 これらも、関数ではなく操作です。 ●方法1 1) <A,B>のデータの下に<C,D>データを、さらに下に<E,F>データをカット&ペースト 2) 1行目を挿入してA1に「ID」、B1に「件数」と見出しをつける。 3) 「データ」→「フィルタ」→「フィルタオプションの設定」を選択 4) 「リスト範囲」にA,B列のデータ範囲を入力 5) 「重複するレコードは無視する」にチェックを入れて「OK」 6) A列B列を選択し、「データ」→「並べ替え」 7) 優先されるキーを「件数」にして「降順」で並べ替え ●方法2 1) 1行目を挿入し、A1・C1・E1・G1に「ID」、B1・D1・F1・H1に「件数」と見出しをつける。 2) G1・H1セルを選択し、「データ」→「統合」 3) 「集計の方法」は「最大値」を選択 「統合元範囲」をA1B1以下のデータを選択し「追加」 続けて、C1D1以下のデータを選択し「追加」 続けて、E1F1以下のデータを選択し「追加」 「統合の基準」で「上端行」「左端列」にそれぞれチェックして「OK」
- nishi6
- ベストアンサー率67% (869/1280)
(A,B),(C,D),(E,F)・・・を全部つなげてピボットテーブルを使うか、 または、 ピボットテーブルウイザード1/3の複数のワークシート範囲を選択し、範囲を登録し、 レイアウトで、 行に行(xx,aaの行)、 列は指定しない、 値に最大値 を指定すればピボットテーブルが完成します。 後は降順ソートをすればいいでしょう。 関数は使いません。操作のみです。