• ベストアンサー

複数シートの名簿から重複する氏名を探知する方法

お世話になります。 エクセルの操作方法を教えてください。 ここにとある名簿があるとします。4種類あります。 とりあえず、4種類の名簿をひとつのファイルにまとめます。 (シートは別々とします) さて、この4種類の名簿シートの中で、 4種類すべてに名前が登場する人物がいたら、それを特定したいと思います。 どんな方法を使えばいいでしょうか? 質問を簡単にするために、以下を定義します。 4種類の名簿は全部構成が同じものとします。 また氏名の入力も同じフォーマットであるとします。 具体的にいえばA列に 漢字姓(全角スペース)漢字名 が入っているとしましょう。 漢字姓(全角スペース)漢字名が完全一致するものだけを「一致」とします。 漢字の入力間違いや、全角スペースの入れ忘れによる部分一致は「一致」とはみなさないもの、とします。 作業のためにシートをコピーしたり、作業のために一時作業シートに4つの名簿を全部コピーするのはかまわないとします。 関数だけで実行する方法を教えてください。 よろしくお願いします。

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

  • ベストアンサー
  • nattocurry
  • ベストアンサー率31% (587/1853)
回答No.1

1つのシートでは名前はユニーで、 4つのシート名が、Sheet1,Sheet2,Sheet3,Sheet4だとして、 Sheet1のB1に =COUNTIF(A:A,A1)+COUNTIF(Sheet2!A:A,A1)+COUNTIF(Sheet3!A:A,A1)+COUNTIF(Sheet4!A:A,A1) と記入して、下にコピペします。 計算結果が4になるものは、4シートすべてに同じ名前があります。

s_end
質問者

お礼

ありがとうございました。 やってみます。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (4)

  • sige1701
  • ベストアンサー率28% (74/260)
回答No.5

nattocurry さんの回答と同じことですが 1つのシートでは名前はユニークで、 4つのシート名が、Sheet1,Sheet2,Sheet3,Sheet4だとして、 Sheet1のB1に =COUNTIF(Sheet2!A:A,A1)+COUNTIF(Sheet3!A:A,A1)+COUNTIF(Sheet4!A:A,A1) 計算結果が3になるものは、4シートすべてに同じ名前があります 1つのシートに名前重複がある場合 Sheet1のB1に =(COUNTIF(Sheet2!A:A,A1)>0)+(COUNTIF(Sheet3!A:A,A1)>0)+(COUNTIF(Sheet4!A:A,A1)>0) 計算結果が3になるものは、4シートすべてに同じ名前があります

s_end
質問者

お礼

ありがとうございました。 やってみます。

全文を見る
すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

4つのシートの列並び(項目構成)が同じとする。 一番簡単なのは4つのシートの第2のシートのデータ部分(見出し項目見出しを除く)をコピーして、第1のシートのデータの下に貼り付ける。第3第4のシートも同じ用に下に貼り付ける。 名前の列で並びかえする。 すると同じ名前は近隣行に集る。 だからどの氏名がダブって居るか目視で判る。 ーー 統合されたシートが出来れば、COUNTIFで重複数を数えても良い。 例 A2以下 A列   B列 a 1 a 2 s b 1 f a 3 b 2 B列の式は =IF(COUNTIF(A:A,A2)>1,COUNTIF($A$2:A2,A2),"") ーー こういうのをすべてに渉ってスムーズに(自動で)やるにはVBAが出来ることが必要。 色々やり方の条件をつけているが、自分の力の限界を色々言っているだけでしょう。 関数などは出来ることは知れていることを知っておくこと。 またエクセルではブックを複数にするととたんに処理が面倒になることも考えて設計すること。

s_end
質問者

お礼

ありがとうございました。 VBAを使えば簡単ですね。 くるくる回せばいいだけで。 それをあえて関数でやる方法が知りたかっただけですよ。 まあ職人気質なプログラム習得者はExcelの関数を見下して何でもかんでもマクロ化、VBA化する傾向があるようですけどね。 (別に君の事をいってるわけじゃないよ) ベストアンサーに選んであげようか? 必要ない? 嫌味に聞こえたらごめんよ。

全文を見る
すると、全ての回答が全文表示されます。
  • nattocurry
  • ベストアンサー率31% (587/1853)
回答No.3

何度もすみません。 記入する列は、B列じゃなくても、C列でもD列でもZ列でも構いません。

s_end
質問者

お礼

ありがとうございました。 やってみます。

全文を見る
すると、全ての回答が全文表示されます。
  • nattocurry
  • ベストアンサー率31% (587/1853)
回答No.2

訂正です。 1つのシートでは名前はユニーで、 ↓ 1つのシートでは名前はユニークで、 の間違いでした。

s_end
質問者

お礼

ありがとうございました。 やってみます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセル:同じ氏名が入力されたら忠告メッセージを出したい。

    お世話になります。 たとえば、A列の縦にずっと氏名を入力していくときに、間違えて同じ氏名を入力してしまったときに忠告メッセージを出すことはできますか? (1) できる場合、どのようにしたらできるのでしょうか? (2) さらに、間違って同じ氏名の方を入力してしまうにしても、姓と名の間にスペースを ・半角で入れたり ・全角で入れたり ・スペースがなかったり 入力担当者(5人ほど)に統一させることができません。そこで、入力担当者にそれができないのならシステムでカバーしたいのです。姓と名の間にスペースがあろうがなかろうが半角であろうが全角であろうが、漢字だけで同一人物と認識させた上で(1)のようなメッセージをだすことは可能でしょうか? VBA(イベント)でできますか? 初心者であるため、わかりやすく教えてくださるなら幸いです。 よろしくお願いします。

  • データ参照して名簿の氏名に番号を振りたいのです。

    エクセルのファイルが二つあります。 No.1 50音順の全ての会員名簿 No.2 当月の会員整理番号つき名簿(整理番号は毎月変わります。この名簿には、全ての会員が載っているわけではありません) No.1の50音順名簿には、A列が空欄、B列がカナ氏名、C列が漢字氏名になっています。(1行目はタイトル行で、2行目以降に氏名が入っています) No.2の名簿を参照して、1の50音順名簿のA列に「当月の会員整理番号」を自動で入力するようにしたいのです。 例えば、50音順名簿の2行目は鈴木一郎さんだとします。今月の彼の番号はNo.2の名簿によると33番だとします。その場合、50音順名簿のA2セルには33と表示させたいのです。(もし、No.2の名簿に鈴木一郎さんの名前がない場合は、空欄として表示したいのです) このデータを印刷することで、50音順名簿から整理番号を確認するのが大変楽になります。 VLOOKUP関数を利用しようと思いましたが、私の方法が悪かったのでしょう、エラーになってしまいました。 自動的に入力されるようにしたいので、改めてセルに数値を入力したくはないのですが、いい方法はあるでしょうか? No.2の名簿ファイルは、データをコピーして、No.1の50音順名簿の別シートに貼り付けても構わないと思います。 よろしくお願いします。

  • Excel 複数のシート名を一括変更できる名簿作り

    Excelでシート名を変更する際、特定のブックの特定のセルに文字を打ち込むと、他の全てのブックのシート名が一括で変更されるようにすることは可能でしょうか。 例えばですが“名簿”というブックの「A1~A5」に文字を入力すると、他の全てのブックの「Sheet1」には“名簿”ブックの「A1」に打ち込んだ文字が反映され、「Sheet2」には“名簿”ブックの「A2」…と、一括で変更できる方法はないかと思っています。 他の全てのブックは一つのフォルダの中に集約します。 また、ブック名だけ変えて中身は原本のコピーをしていきます。 3000を超えるブックを作るので、変更をすることになった時は全て手作業になるかと思うとゾッとします…。 調べていると、VBAというものを使いそうというところまで分かったのですが、こことはカテゴリが違っていましたら申し訳ございません。

  • エクセルで複数のシートからのデータ抽出

    いつも大変お世話になっております。 Sheet1、Sheet2に名簿1、名簿2が作成してあり、同一表中に同じ氏名や姓が同じで名前違いがあり、それぞれに同じまたは別のTELや住所等の付帯情報が入っています。 この2つのっシートから、検索シートのB2セルに姓(例えば山本)だけを入れた場合に、山本を含む氏名の人の情報をリストにしたいのです。 複数シートのCOUNTIFとVLOOKUPで出来そうな気がしたのですが思うようにいかず。 どなたかHELPお願いします。 実際には製品名(シリーズの場合枝番が付いたりつかなかったり)で保管場所、容器サイズ、その他の情報をリストにするのが目的です。 つまり同じ製品名「A123」でもサイズ違いがあったり、保管場所が違ったり・・・をリストにしたいのです。

  • エクセルで複数のシートのコピー方法は

    エクセルで シート1~シートN までの複数シートを シート名(集計)にコピーする マクロで関数組む方法を指導願います 条件1 シート名は 作業のつど 名前が 変更します 条件2 シートの形式は全部同じです エクセル 2000

  • エクセルで名簿を作る際に、入力したあとに、氏名の前にスペースを一度にい

    エクセルで名簿を作る際に、入力したあとに、氏名の前にスペースを一度にいれたいのですが、どうしたらいいでしょうか?教えて下さい。置換をつかうのでしょうか?

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

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

  • こんなことエクセル関数でできますか?

    お世話になります。 エクセルの1列に日本人の氏名が約2000名分並んでいます。1セル1名なので例えばA1セル~A2000セルに2000名分の氏名が入力されているといった感じです。 氏名は全角漢字で姓と名の間に全角のスペースが入っています。 ここで、この2000名の中で同姓同名(漢字が全て同じ)を即座に知る方法を探しています。 例えば、山田 太郎がA1、A409、A1765にあり、佐藤 花子がA222、A288にある事実を簡単に知る方法を探しています。 エクセルの関数を使って出来ないでしょうか? (関数が入力された1列2000行に2000名の名前を貼り付けると、B1、B409、B1765に山田 太郎が返ってくるとか・・・。) 宜しくお願いいたします。

  • Access]2つのテーブルを比較してフィールドの一部が一致したデータを抽出

    2つの名簿テーブルを比較してどちらのテーブルにも含まれている個人を抽出したいと考えております。 テーブル名とフィールドは以下のとおりです。 ==================== テーブル名「名簿A」 氏名 電話番号 住所 メールアドレス ==================== テーブル名「名簿B」 姓 名 電話番号 住所 メールアドレス ==================== たとえば、この2つの名簿をメールアドレスで一致したものを抽出する場合は選択クエリのデザインビューで「名簿A」のフィールドを読み込ませ、 メールアドレスフィールドの抽出条件として Like [名簿B].[メールアドレス] を入れれば抽出ができたのですが、メールアドレスは、名簿ごとに記入されていたりしなかったりするので、名前での一致を行いたいと思っています。 ここで問題なのが、名簿Aは「氏名」で入力されているのに対し、名簿Bでは「姓」と「名」が別フィールドになっております。 そこで自分なりにやってみたのが、選択クエリのデザインビューで「氏名」のフィールドの抽出条件として Like (*[名簿B].[姓]*) を設定するものでした。 これがうまくいけば最終的には Like (*[名簿B].[姓]*) And Like (*[名簿B].[名]*) という風にして、名簿Aの「氏名」フィールドに名簿Bの「姓」も「名」も入っているものを抽出できるかな?と考えたのですが、上記のように入力すると、自動的に Like ("*[名簿B].[姓]*") となってしまい、何も抽出されなくなってしまいました。 このような方法では希望する抽出は行えないのでしょうか? お分かりのかた、よろしくお願いいたします。

  • エクセル 単一シートから成る複数のブックを1つのシート上にまとめる方法

    いつもお世話になります。 今回は、単一シートから成る複数のブックを1つのシート上にまとめる方法を教えていただきたく、質問させていただきました。 具体的に言いますと、ある1つのブックの1つのシートに500以上の商品名、使用量等が入力されており、そういう同じ形式のブックが30ほどあります。この複数のブックを1つのシート上にまとめたい(上からずらっと行を空けずに並べたい)のです。順番は問いません。手作業でコピー&ペーストを繰り返せば出来ることなのですが、もし簡単に出来る方法があれば教えていただけないでしょうか? よろしくお願い致します。

専門家に質問してみよう