• 締切済み

複数のシートから重複するデータを別シートに抜き出す

こんにちは。 Excel2007です。 複数のシート(現在はSheet1からSheet4ですが、最終的にはSheet10ぐらいまでになります)に蔵書データが入っています。 A列21行目から作者名、B列21行目から本のタイトル、C列21行目からページ数と以下、値段、ISBNなどJ列まで蔵書データが入っています。本棚ごとにSheet1、Sheet2と分かれて入力されています。 この複数のシートから本のタイトルが重複するものを別シートに抜き出すにはどうしたらいいでしょうか? 重複データを削除するマクロや関数は探せたのですが、複数のシートにまたがっている場合は探しきれませんでした。 何かいい解決方法があればご教授下さい。

みんなの回答

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

一例です。 (1)各シート情報を抽出用シートにコピー    抽出用シートには後のオートフィルタの操作の為、見出し行を設定の事 (2)抽出用シートの空き列に=COUNTIF(B$2:B2,B2)>1を入力、下方向にコピー (3)オートフィルタを設定、上記の列のフィルタボタンでTRUEを選択    必要ならば、抽出結果を選択コピーして別シートに貼り付けてください。 将来的にはこの操作をマクロ(VBA)を作成出来るように学習しては如何でしょうか。

CaveatEmptor
質問者

お礼

回答ありがとうございます。 やはり各シートのデータを一つにまとめるしかないですかね。

CaveatEmptor
質問者

補足

自己解決しました。ありがとうございました。

  • oct1290
  • ベストアンサー率35% (75/213)
回答No.1

関数以外でVBAなら出来ますが少し難しい 関数なら参考程度ですが参照URLをご覧ください

参考URL:
http://www.eurus.dti.ne.jp/~yoneyama/Excel/filter3.htm
CaveatEmptor
質問者

お礼

回答ありがとうございます。 関数でなくVBAでもいいのですが、重複しないものを抜き出すにはそれ以外のデータと照合するしかないでしょうか?

関連するQ&A

  • 不要なデータを切り取って別のシートに貼りつける

    シート1に色々なデータが並べています。A列~J列、5000行くらいです。 J列に「0」「1」「#N/A」の三つの値がバラバラに並べています。 フィルタで昇順にし、「0」「1」「#N/A」と奇麗に並べます。 「0」と「#N/A」の行を切り取ってシート2へ貼り付けます。 そして次にG列に「ダウンロード」以外の文字があった場合も同様に切り取ってシート2に貼り付ける といった作業をしています。作業が大変なので、マクロで実行したいのですが、コードの記述が分からないのです。教えて下さい。 宜しくお願いします。

  • EXCELで複数のワークシート(1つでも良い)において、D列のみ重複し

    EXCELで複数のワークシート(1つでも良い)において、D列のみ重複したデータあった場合 最初の行だけ残し、D列が重複している、他の行を削除したいのですが、どのようにしたらよいでしょうか。 複数のワークシートと申しましたが、1ワークシートで対応できれば、各ワークシート毎に行っていきます。 よろしくお願いいたします。

  • エクセル:複数シートで重複データを抽出したい

    こちらで、ひとつのシート内での重複データの抽出はできました。 ↓ http://www12.ocn.ne.jp/~momonet/excel-temp41.htm これを応用し、複数のシートの列内の重複を抽出することはできますか? シート1のA列とシート2のC列というように、同じ列ではないこともあります。 よろしくお願いします。

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

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

  • 一致するデータを複数シートから別のシートへ移動

    Sheet1~Sheet3を用いて、 Sheet1とSheet2でそれぞれのC列の項目が一致するデータを抽出し、 該当するデータの Sheet1B列⇒Sheet3D1 Sheet2A列⇒Sheet3A1 Sheet2B列⇒Sheet3B1 Sheet2C列⇒Sheet3C1 に移動するためのマクロを組みたいと思っています。 Sheet2からSheet1に検索をかけて、 Sheet2C列≠Sheet1C列であればSheet2のA1行を削除していき Sheet2C列=Sheet1C列であれば Sheet2A~C列をSheet3A~C列へ移動するところまでは出来ました。 ※なお、Sheet3のA1行に文字列があればセルを1行追加する設定にしています。 しかし、それはA1行の文字列をそのままコピペしているだけなので Sheet1B列の一致データをSheet3D1へ移動するやり方が思い浮かびません…。 Sheet2と同じくA1行を削除していこうとしてもうまくいきませんでした。 どんどんマクロも指示文ばかりが増えてわけが分からなくなってきてしまい、挫折しています。 シンプルにするにはどうすればいいでしょうか? また、マクロの内容を載せたいのですが 会社の業務端末で組んでいるため転記できません; 申し訳ありませんが、どうかご指導ください。

  • エクセル 複数シートのデータを1シートにまとめるマクロ

    エクセルの複数シートにデータがあります。同じ条件の人のデータだけをひとつのシートにまとめたいのですが、マクロを教えていただけますでしょうか。それとも、マクロ以外に良い方法がありますか? エクセル初心者なので、あたりまえのことも知らないかもしれません。。。  【データ】 ●シート1からシート20まで、同じ配列でデータがあります。 ●1行目は見出しです。2行目から1人づつのデータです。(多くても65行までと思っています。) ●A列に到達度、B列に出欠をいれました。 ●C列からM列が氏名、課題、その他のデータです。 ●リストはシート21にあります。  【こんな作業でしょうか?】 ●シート1から20で A列が「C」または「D」ならば その行のA列からM列をコピーして シート21のA列からM列に形式を値にして張り付ける ●シート1から20で B列が「欠」ならば その行のA列からM列をコピーしてシート21のA列からM列に形式を値にして張り付ける (っというのが私の乏しい知識で考えた方法なのですが、これでは不具合がでますか? もちろん、この方法じゃなくもっといいのがあれば、それをやってみたいです。)

  • book1シート1のデータを別bookシートに移す

    a1シート1のデータ1,2(データ1.5列G行~18列G行,~9000個、データ2.25列G行~38列G行,~9000個)を b1シート1,c1シート1に移行したいのですが、 a1シート1のデータは、9000個と9000個とします。 b1シート1,c1シート1は、16000個前後をできれば最大にしたいと考えています。 このとき移行したいb1シート1(5列G行~18列G行,~16000個)は最終行からでてしまいます。 でてしまう分をc1シート1(5列G行~18列G行,~2000個)に書き移したいと思っています。 分かりやすくと思い9000個と書きましたが、データにより数は、異なっています。 このとき、データ1とデータ2の連結は、空白行なしです。 b1シート,c1シートは、a1シートとは、別bookです。 こんなときのマクロを教えていただければと思い質問しました。 マクロ記録でしましたが、うまくできませんでした。 コードを教えていただけませんか。 よろしくお願いします。 m2010です。

  • エクセル 複数の文字列を別シートで重複個数を出す

    たくさんの質問を参考にしましたが、私のやりたい作業に活かせず困っています。 2つのSheetにそれぞれ別の情報(文字列と数字が混在した一覧)があります。 Sheet1には企業名が羅列しており、A列1行→P列140行まで入力してあります。 Sheet2にはJ列に企業名、他列には文字列、数字などの情報が入っています。 やりたい作業ですが、Sheet1の企業名と、Sheet2の企業名が一致する「数と企業名」を摘出したいです。 Sheet1とSheet2はそれぞれ同一企業名ではなく、バラバラです。 ◇Sheet1は固定企業名が1セルに1つ入っています。(重複無し) ◇Sheet2は毎月データが変更となり(列の項目に変更はありません)同一企業が複数入っています。 毎月、Sheet1の企業がSheet2のデータにどれだけあるのかを提出しなければなりません。 今までフィルタ機能を使って色を付けたり、入力して探したりしていましたが、毎月となると企業数が多すぎてどれだけ時間があっても足りません。 エクセルのバージョンは2010 エクセルの理解度は複雑ではない関数を多少使っている程度です。 ※補足 企業名は関数で(株)などは除いて表示した列もあります。 ※企業名は英語・漢字・カタカナ・全角・半角・記号が混在しますが統一すべきでしょうか? 提出期限が迫っており困っています。 どなたかアドバイスいただけないでしょうか。 わかりにくい説明で申し訳ございません。 よろしくお願いします。

  • EXCELで分かれたシート間の同一データ行を自動削除して結合したい

    EXCELで、シート1、シート2に分かれたデータがあります。 それぞれのシート間でC列~F列の値が重複している行、シート1側のG列の数値がマイナス になっている行を自動で削除してからデータを1つのシートに結合する方法を探しています。 条件は、シート1側の重複データ行のみを削除し、シート2側のデータが必ず残る方法であ る必要があります。G列のマイナス行を削除するのはシート1側のみです。 シート1がA列~I列、約3万行、シート2がA列~K列、約1千行くらいです。 シート2側のみJ列~K列(数値データが入っています)が存在しますが、シート1側は空欄です。 列の数は変わりませんが、行数が都度変動しますのでマクロでコピー先のセル位置を決め打ちする 事が出来ません。 1つのシート上で重複するデータを削除する方法は見つける事が出来たのですが、残す方のデータ が指定出来ないのと、複数のシート上の重複データを削除する方法が見つかりませんでした。 何か良い方法がありましたら、ご教授下さい。

  • データを別bookシートに移す

    a1シート1のデータ1,2(データ1.5行G列~18行G列,~9000個、データ2.25行G列~38行G列,~9000個)をb1シート1,c1シート1に移行したいのですが、 a1シート1のデータ1,2は、9000個と9000個とします。 b1シート1,c1シート1は、16000個前後をできれば最大にしたいと考えています。 このとき移行したいb1シート1(5行G列~18行G列,~16000個)は最終列からでてしまいます。 出てしまう分をc1シート1(5行G列~18行G列,~2000個)に書き移したいと思っています。 分かりやすくと思い9000個と書きましたが、データにより数は、異なっています。 このとき、データ1とデータ2の連結は、空白行なしです。 b1シート,c1シートは、a1シートとは、別bookです。 こんなときのマクロを教えていただければと思い質問しました。 マクロ記録でしましたが、うまくできませんでした。 コードを教えていただけませんか。 よろしくお願いします。 m2010です。  a1シート1 /ABCDEFGHI-------------MHJ 1データ1 2------9000個 3 4 5------○○~~~~~○○ 6------○○~~~~~○○ 7------○○~~~~~○○ . . . 17-----○○~~~~~○○ 18-----○○~~~~~○○ 19 . . 23データ2 24-----9000個 25-----○○~~~~~○○ 26-----○○~~~~~○○ . . . 37-----○○~~~~~○○ 38-----○○~~~~~○○ 39 b1シート1 /ABCDDEFGHI-----------MHJ-------WQP 1データ1,データ2 2-------16000個 3 4 5-------○○~~~~~○○~~~○○ 6-------○○~~~~~○○~~~○○ 7-------○○~~~~~○○~~~○○ . . . 17------○○~~~~~○○~~~○○ 18------○○~~~~~○○~~~○○ 19 データ1,データ2の継ぎ目に空白なし。 マクロの記録では、 Sub Macro1() ' ' Macro1 Macro ' ' Range("G5").Select ActiveSheet.Paste Range("MHJ5").Select ActiveSheet.Paste Range("F4").Select End Sub c1シート1 /ABCDEFGHI~~ 1データ2の残り 2------2000個 3 4 5------○○~~○○ 6------○○~~○○ 7------○○~~○○ . . . 17-----○○~~○○ 18-----○○~~○○ 19 この質問は、難しいのでしょうか。 書き方がわるいのでしょうか。 よろしくお願いします。

専門家に質問してみよう