エクセルで重複しない行を抽出する方法とは?

このQ&Aのポイント
  • 重複しない行をエクセルで抽出する方法を教えてください。
  • 特定の列の値が他と重複しない行を抽出する方法を教えてください。
  • vlookupなどの関数を使用して重複しない行を抽出することは可能でしょうか?
回答を見る
  • ベストアンサー

エクセルで重複しないものだけを抽出したい

下記のようなデータがあります。 A B C D 1 20 30 40 1 20 32 41 1 20 30 49 1 20 81 39 2 20 76 40 2 20 32 41 2 20 30 49 3 20 81 39 3 20 39 40 3 20 32 41 4 20 30 49 4 20 81 98 このうち、列Aの他と重複しない部分であり、かつ先頭行を抽出するにはどのようにしたらよいでしょうか? 上記の例で言うと、列Aの1から4までのそれぞれ1行目を選ぶという作業です。 抽出後 A B C D 1 20 30 40 2 20 76 40 3 20 81 39 4 20 30 49 vlookupなどの関数でできるのでしょうか?教えてもらえたらうれしいです。お願いします。

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

次の方法は如何でしょうか。 (1)先頭に見出し行を挿入、空き列(仮にE列)のE2に=COUNTIF($A$2:A2,A2)=1を入力、下方向にコピー (2)先頭行から最終行の範囲を選択→データ→フィルタ→オートフィルタ→E列のフィルタボタン押下でTRUEを選択

nayaroll
質問者

お礼

回答ありがとうございます。 いただいた方法ですが、(1)のやり方では、列A(ここではID番号を示す)の1は抽出できますが、2以降もすべてfalseになってしまいます。 列Aの番号が何百もあるので、一度に抽出する方法はないかと思ったのですが・・・。

その他の回答 (2)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

NO2です。 >なぜ先頭行のIDを1つだけ選べるのでしょうか? ⇒数式のCOUNTIF($A$2:A2,A2)=1の「=1」部分を削除すると分かりやすので一度お試し下さい。  E2はCOUNTIF($A$2:A2)の範囲でA2内容が含まれる件数で「1」、E3はCOUNTIF($A$2:A3,A3)で2、E4はCOUNTIF($A$2:A4,A4)で3、という様にA列内の同一値をカウントさせています。  従って、カウントの「1」は1番目データになるのでこれを利用した次第です。

nayaroll
質問者

お礼

mu2011さん、 たいへんわかりやすい説明でした。 ありがとうございます!!ご親切に感謝します。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

NO1です。 >1は抽出できますが、2以降もすべてfalseになってしまいます ⇒次の方法でコピーされていますでしょうか。  (1)E2セルの右枠下の■をドラッグします。(左クリックを押しながら下方向へ移動させる)  (2)又は、その■をダブルクリックすると左列が空セルまでコピーさます。  以上、お試し下さい。

nayaroll
質問者

お礼

mu2011さん、 回答ありがとうございます。おかげさまで抽出できました!! わかりやすく回答いただき感謝です。後ほど良回答ポイントつけさせていただきますネ。 さて、ちょっと質問なのですが、 =COUNTIF($A$2:A2,A2)=1 とすると、なぜ先頭行のIDを1つだけ選べるのでしょうか? ネット検索しましたが、よくわかりませんでした。 お時間ゆるせば、簡単な解説いただけるとありがたいです。

関連するQ&A

  • 重複するデータの抽出について(エクセル)

    エクセル2003にて重複するデータの取り出しをしたいのですが、 わからないので教えてください。 例えば   A列   B列   C列    D列    E列・・・ 1  色  1回目  2回目  3回目   4回目 2  赤   あ    a      A       0 3  白   い    b      B       1 4  黄   う    c      C       2 5  黄   え    d      D       3 6  黒   お    e      E       4 7  赤   か    f      F       5 : このデータの中から、別のシートのA1に 赤と入力したら、B1にD列のA・Fを抽出 黄と入力したら、B1にD列のC・Dを抽出をしたいです。 VLOOKUP関数を使用してみたのですが、 赤と入力すると、D列のA(1番上のデータ)のみしか抽出出来ず、Fが抽出されません。 重複するデータがあるのはA列のみで、D列には重複するデータはありません。 わかりにくい文章ですみませんが、よろしくお願いします。

  • excelの複数シートを検索対象にして重複行を抽出する方法

    ある値が重複する行を抽出したいのですが 抽出元データが600,000行近くあり、1sheetに入らず9シート程に分けました。 countifを使おうとしたのですが検索範囲に複数シート指定が出来ず(3D-参照の対象関数ではないようです)、 =COUNTIF('sheet1:sheet9'!$C:$C,C1)としてみたのですが、重複行があっても全て#VALUE!となってしまうので機能できていないようです。 具体的には sheet1~8に下記のようなデータがあり、C列が重複する行を抽出したい。 A列:id、B列:名前、C列:メアド、D列:xx 宜しくお願い致します。

  • エクセル / 重複する文字の行番号を抜き出す。

    お世話になります。 XP/2003 使用です。 エクセルで下記のようなケースの行番号を抜き出したいです。 できれば、関数のみがありがたいのですが、 マクロでもOKです。 ----------- 抽出したい行番号  重複する文字が入力された 「先頭の行」 と 「最後の行」 の行番号 ----------- 例 同じ列に、重複する単語が入力されています。 重複する単語は、必ず上下に並んでいますが、 1単語のみ場合もあります。 1  AAA 2  AAA 3  AAA 4  AAA 5  BBB 6  BBB 7  CCC 8  CCC 9  CCC 10 DDD 上記の場合の抽出した行番号 単語 → 先頭の行/最後の行 AAA → 1/4 BBB → 5/6 CCC → 7/9 DDD → 10/10 行番号は、B列、C列などに抽出できれば良いです。 何卒よろしくお願いします。

  • エクセルマクロで重複数値と以外の数値を抽出する

    数値の表を作成しておりますが、 重複数値で困っております。マクロで教えてください。 A列11~20まで1.2.2.4.5.6.6.8.9.10とあるデータに 2と6が重複しています 重複数値2.6をB列2行目以降に、C列2行目以降にはそれ以外の1.4.5.8.9.10 を抽出したいのですが、マクロで教えてください。 (offsetを使ってできますか?) また、重複数値を抽出する自作関数ってできるでしょうか? よろしくお願いいたします。

  • エクセルで項目を抽出したい

    皆様のお知恵をお貸しください。 日々作業者が行っている日報の項目を一覧表より抽出したいのです。 シート1には受付日(A列) 品番(B列) 数量(C列) 納期(D列)・・・ などが記入されています。日々増えていき月あたり100件程度です シート2には作業者の日報に書かれている品番(A列)、作業時間(B列)、作業者名(C列)作業日時(D列)を手入力していきます。 月当たり1000ほどの入力になります。 複数の作業者が同じ仕事をすること、日をまたぐこともあり重複しています。 求めたいことはシート3のA列にシート2で書かれた品名をシート1の品名の中から抽出し自動で書き出したいのです。 今はピボットを使いシート2のデータを表にして、そこの項目をLOOKUP関数を用いて導きだしていますが、その都度ピボットを更新させないといけないので煩わしいと思い、できれば関数で抽出をしたいのです。欲を言えば品番の若い順に自動で抽出できればいいのですが、まずはシート2に書かれた順でもかまいません。 記入例 シート1には A列    B列    C列    D列 10/1   10001    30    10/12 10/2   10002    1     10/5 10/2 10003 3 11/5 ・       ・        ・ シート2には  A列    B列     C列    D列 10001    2.5     ○○   10/2  9058    4      ○○   10/2 10003 1 ○○   10/3 10001 1 ××   10/3  10003 6 ××   10/3 10002 2 △△   10/5 シート3には(希望としては)  A列     9058 10001 10002 10003 . . . よろしくお願いします。     

  • エクセル2003 重複データの抽出

    エクセル2003を使っています。 重複したデータの抽出を行いたいのですが、 例えば、  A      B     C      D コード  書籍名  出版社名  著者 といった感じのデータが1万件ほどあります。 このうち、B列の「書籍名」が重複しているデータを抽出したい です。(抽出したものは、書籍名だけではなくて、ほかの出版社や著者の指定したデータも表示させたい。) VLOOKUPなどを使えばできないこともないのですが、一万件の 処理を行う上に、パソコンも非力なので時間がかかってしまい 困っています。 どうぞよろしくお願いします。

  • 重複データの抽出

    重複した数字のデータを抽出してまとめたいのですが教えていただけないでしょうか? 例えば A列    B列   1245     1365     1245 1398 1365 1155 1245 この表を      A列    B列   1245    1245 1365    1365 1245    1398 1398    1155 1365 1155 1245 のようにまとめたい A列の重複したデータを抽出しB列にまとめたいのですが、なるべく関数でやりたいのですが、良い方法をお願いいたします。

  • エクセルでの集計

    A列に下記のようなデータが千件くらい入っています。 例:C-100/50/5/5   A-200/100/50/5   B-100/100/10/10   C-100/50/5/5   A-200/100/50/5   D-300/50/50       ・       ・ かなり重複もあります。 C列にA列のデータを以下の様に集計したいと思います。 例:A-200/100/50/5   B-100/100/10/10   C-100/50/5/5   D-300/50/50      ・      ・ 重複している場合は1行とし抜き出し、順番に集計したいのですが、 マクロか関数でする場合、どのような記述になるのでしょうか? よろしくお願いします。

  • エクセルの関数についてです

    大変恐縮ですが、エクセルの関数について教えていただきたいと思います。 例 A B C D 1 175 141 210 98 2 47 70 417 39 3 64 845 32 626 4 79 194 54 85 5 224 68 85 110 上記A列からD列の数字が1行目から5行目まで5セットあります。 その中でAはBより大きくCより小さい(B<A<C)なおかつBはAより小さく Dより大きい(A>B<D)。 と、この条件を両方満たしている行だけを抽出したいと考えております(例では1行目が該当します)。 手元に約6万行分のデータがあり、何とか関数で処理したいものの詳しく分からず困っています・・・。 お忙しいところ申し訳ございませんが、どなたか関数をご存じでしたら 教えてくださると幸いです。 よろしくお願い致します。

  • エクセルマクロ重複した列を削除した結果を抽出したい

    お世話になります。 各行で、重複したセルを除いた文字列を結合してA列へ表示させたいのですが、全然わからず困っています。宜しくお願い致します。 【抽出前】 セルB2:あいうえお セルC2:かきくけこ セルD2:さしすせそ セルE2:あいうえお セルB3:たちつてと セルC3:らりるれろ セルD3:たちつてと         ・         ・         ・ 【抽出後】 ※重複した部分を除いた抽出結果を、A列に表示させたい セルA2:あいうえおかきくけこさしすせそ セルA3:たちつてとらりるれろ         ・         ・         ・ 【補足】 ※列数は決まっていません。値が入っているところ迄、となります。例では最長E列迄になっておりますが、もっと長い場合もあれば、B列だけの場合もあります。 ※行数は、数100行あります。こちらも値が入っているところ迄、抽出結果をA列のA2から順番に表示させたいです。