• ベストアンサー

エクセルで同じ名前の該当データを抽出する方法

よろしくお願いします。 昨日質問させていただき、ご回答を頂き、既に締め切っている内容について、困っております。 締め切った質問は、QNo.3223413「エクセルの関数?について」 質問内容は、 「お世話になります。 今、次のような調書を作成中ですが、処理効率を上げるためにエクセルの関数?を活用してと考えております。 シート1には、次のようなデータが入っております。 「・・」本質問のために各セルの位置を合わせるために 入れているだけです。 ・・・・A・・・B・・・C・・・D・・・E・・・ 1・・氏名・・1位・・2位・・3位・・4位・・・  2・・佐藤・・・・・・・○・・・・・・・・・・・ 3・・吉田・・・○・・・・・・・・・・・・・・・ 4・・伊藤・・・・・・・・・・・・・・・○・・・ シート2に、シート1のデータを参照して、氏名の該当者に 対して、B2以降に該当順位を付す方法を教えてください。 ・・・・A・・・B・・・ 1・・氏名・・順位・・・  2・・佐藤・・2位 3・・吉田・・1位 4・・伊藤・・4位 シート1は外部から受けたデータであり、シート2は内部で 新たに加工する調書です。1500件ぐらいあるので、何と かエクセルを活用したいと考えておりますので、よろしく お願いします。」 であり、回答いただき当初の目的に対応する回答の「LOOKUP」を採用して作業を進めておりましたが、シート1を上から順番にLOOKUPしていく場合は、回答いただいたままでOKでしたが、シート2を作成において、佐藤○○と打込めば、シート1の同姓同名である佐藤○○を見に行って反映する方法を教えてください。 確かに、ご回答いただいた方々の中には、シート1とシート2が同じ順番で作成されている場合を想定してご教授いただいており、私の質問の不足でご迷惑をお掛けいたしますが、よろしくお願いします。

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

  • ベストアンサー
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.3

◆これでいかがでしょうか? ★Sheet2のB2の式 B2=IF(A2="","",INDEX(Sheet1!$A$1:$E$1,SUMPRODUCT((Sheet1!$A$2:$A$4=A2)*(Sheet1!$B$2:$E$4="○")*COLUMN(Sheet1!$B$1:$E$1)))) ★下にコピー

makoteru
質問者

お礼

本回答により、作業を終えることが出来ました。 ありがとうございます。

その他の回答 (2)

  • hiro-ss16
  • ベストアンサー率42% (18/42)
回答No.2

一つの方法として、IF関数でF列に順位を出し、G列で氏名と順位を接続する方法はどうでしょうか。この場合、氏名と順位の間は空白をいれています。いずれも式を下方向にコピーします。F2とG2の式は次のようにします。 F2=IF(B2="○","1位",IF(C2="○","2位",IF(D2="○","3位",IF (E2="○","4位","")))) G2=A3&" "&F3 ....A.........B.........C.........D.........E.........F........G 1 氏名...1位....2位....3位....4位 2 佐藤...............○...........................2位...佐藤 2位 3 吉田....○......................................1位 4 伊藤............................○..............3位

makoteru
質問者

お礼

ご指導いただき感謝申し上げます。

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

http://okwave.jp/qa3223413.html に答えた#3のものです。 その最後の部分に書いた、ことで満たされない点はあるのですか。 補足してみてください。 よく読んでくれてないのではないですか。

makoteru
質問者

お礼

度重ねてのご指導賜り感謝申し上げます。 また、当方の理解度の悪さに、身の縮まる思いでございます。 本エクセルの完成させなければならない時間が迫っていたものですから・・今後、皆様からのご指導を無にしないよう心がけて、教えてgooに参加してまいりますので、ご容赦ください。 ありがとうございました。

関連するQ&A

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

    お世話になります。 今、次のような調書を作成中ですが、処理効率を上げるためにエクセルの関数?を活用してと考えております。 シート1には、次のようなデータが入っております。 「・・」本質問のために各セルの位置を合わせるために 入れているだけです。 ・・・・A・・・B・・・C・・・D・・・E・・・ 1・・氏名・・1位・・2位・・3位・・4位・・・  2・・佐藤・・・・・・・○・・・・・・・・・・・ 3・・吉田・・・○・・・・・・・・・・・・・・・ 4・・伊藤・・・・・・・・・・・・・・・○・・・ シート2に、シート1のデータを参照して、氏名の該当者に 対して、B2以降に該当順位を付す方法を教えてください。 ・・・・A・・・B・・・ 1・・氏名・・順位・・・  2・・佐藤・・2位 3・・吉田・・1位 4・・伊藤・・4位 シート1は外部から受けたデータであり、シート2は内部で 新たに加工する調書です。1500件ぐらいあるので、何と かエクセルを活用したいと考えておりますので、よろしく お願いします。

  • データの抽出

    名簿形式のデータAがあります。 そのデータAの中から一部を取り出したデータBを作成しました。 質問は全データである「A」から「データB以外のデータ」であるCを 作成するにはどうすれば良いのでしょうか?エクセルの関数かアクセスを使って簡単に抽出できるのでしょうか。よろしくお願いします。 A   氏名  住所 など 1 石川  東京 2 佐藤  名古屋 3 山田  北海道 … 100   B   氏名  住所 2 佐藤  名古屋 5 本田  東京 10 … 78 C    氏名 住所 1 石川 東京 3 山田 北海道 4

  • excelでシートから別シートに抽出する方法

    データシートに A   B    C 佐藤 りんご  25個 木村 オレンジ 3個 伊藤 メロン  12個 伊藤 スイカ  2個 佐藤 イチゴ  40個 佐藤 マンゴー 8個 というデータがあったとします。 それを別のシートに A   B    C 佐藤 りんご  25個    イチゴ  40個    マンゴー 8個 また別のシートに A   B    C 伊藤 メロン  12個    スイカ  2個 といったようにAに佐藤とか伊藤とか入力するだけでB、Cが自動で抽出できるようにできますか? 出来れば関数の入力でやりたいのですがわかる人がいましたらご教授ください。

  • Excel 抽出データを別シートに移す方法

    アルバイトの方の勤怠管理のためにタイムカードレコーダーを使っていて、 毎月その内容をExcelに出力しています。 A   B     C       D    E   F    G ------------------------------------------------------------ 番号 氏名   日付     出勤  外出  戻り  退勤 1  伊藤太郎 2005/1/16  8:55           16:35 1  伊藤太郎 2005/1/17  8:52           16:40                ・                ・ 2  佐藤花子 2005/1/16  9:48           15:07 2  佐藤花子 2005/1/17  9:51           15:10                ・                ・ 1つのファイルの中にすべてのアルバイトさんのデータが出力されて いるのですが、個人毎にデータを保存しておきたいので、毎回オートフィルタで 1人ずつデータを抽出して別シートにコピーしています。しかし、アルバイト さんの数が増えるにつれて作業量&時間も増えてきてしまいました。 この作業をマクロやVBAで自動化できれば・・・と思うのですが、何かよい 方法はありますでしょうか。 説明が足りない部分がありましたらご指摘ください。よろしくお願いいたします。

  • Excel 該当データ数の抽出方法(日付)

    Excel 該当データ数の抽出方法(日付) <元データ>  A    B      C 1 氏名  開始日  終了日 2 3 青木 2010/3/1 2010/3/10 4 石田 2010/3/1 2010/3/20 5 鈴木 2010/3/3 2010/3/7 6 佐藤 2010/3/1 2010/3/3 7 田中 2010/3/5 2010/3/17  上記のような元データがあった場合に、各日に実施されているデータ数(開始日~終了日の間 に当たるデータ数)を以下のように抽出したいのですが、その方法を教えていただけないでしょうか。抽出先は同じシート内でも、別シートでもいいのですが。 <抽出>    A      B 1  日付    該当数 2 3 2010/3/1   3 4 2010/3/2   3 5 2010/3/3   4 6 2010/3/4   3 7 2010/3/5   4  よろしくお願いします。 

  • エクセルのデータ抽出、別シートへの表記

    こんばんは。 とても簡単かもしれませんが、私の力ではどうしようもありませんのでどなたかお教えください。 sheet2には下記のようなデータがあります。    A       B       C       D 1         吉田     山田     佐藤   2 10月1日   A 勤    C 勤    B 勤 3 10月2日   C 勤    B 勤    A 勤 4    ・・・以下、データが続く・・・ sheet1に、以下のような結果を表記したいのです。    A       B       C       D 1          A 勤    B 勤    C 勤 2 10月1日    吉田     佐藤    山田  3 10月2日    佐藤     山田    吉田 4   ・・・以下、データが続く・・・ 過去の質問を見ても解決できませんでした・・。かなり素人です。お助けください。

  • エクセルのデータ抽出、別シートへの表記について

    こんばんは。 昨晩同じ質問をしたのですが、やはりN/Aエラーが出てしまいますのであらためてお願いいたします。(昨晩の質問は締め切ってしまいました) sheet2には下記のようなデータがあります。    A       B       C       D 1         吉田     山田     佐藤   2 10月1日   A 勤    C 勤    B 勤 3 10月2日   C 勤    B 勤    A 勤 4    ・・・以下、データが続く・・・ sheet1に、以下のような結果を表記したいのです。    A       B       C       D 1          A 勤    B 勤    C 勤 2 10月1日    吉田     佐藤    山田  3 10月2日    佐藤     山田    吉田 4   ・・・以下、データが続く・・・ 過去の質問を見ても解決できませんでした・・。かなり素人です。お助けください。

  • Excel 条件に該当する行の異なるセル参照

    エクセル初心者ですが、質問をさせて頂きます。 関数を利用してSheet2に下記のような記録データを貼り付け   A   B  C   D 1 名前 組 成績  組内順位 2 山田 1  280   1 3 伊藤 1  233   2 4 佐藤 3  298   1 5 山本 2  264   1 6 斉藤 3  215   2 7 田中 2  256   2 Sheet1のC列に該当者名を参照する方法はございませんでしょうか?    A  B   C 1  組 順位 名前 2  1  1 3  1  2 4  2  1 5  2  2 6  3  1 7  3  2 [=INDEX(Sheet2!A:A,MATCH(AND(Sheet2!B:B=A2,D:D=B2),Sheet2!A:D,0))] このような形でC2から検査値をずらして 試してみているのですがなかなかうまくいきません。

  • Excelで、他のシートのデータを取り込む(統合する)には?

    下記のような「Sheet1」のデータ(学年)に、「Sheet2」のデータ(住所)を取り込もうとしています(データは架空例です)。Sheet1・2は、A列の内容が共通していますが、「Sheet2」のほうがデータ数が少ないです。LOOKUP関数を使えばいいのかと思いましたが、LOOKUPはデータ行数が完全一致している必要があるのか、うまくいきません。 要するに、「Sheet1」のA列に一致する文字列が「Sheet2」のA列にあった場合、その行のB列の内容を「Sheet1」のC列に入れる、というようにしたいのです。どのような手順で行えば可能でしょうか。よろしくお願いします。 --- ■Sheet1(学年データ) 1氏名(A)   学年(B) 2阿部一郎  1年 3伊藤二郎  2年 4上田三郎  3年 5江藤四郎  4年 ■Sheet2(住所データ) 1氏名(A)  住所(B) 2伊藤二郎 東京都○○区 3江藤四郎 大阪府○○市 ■ほしいデータ(Sheet1) 1氏名(A)   学年(B)   住所(C) 2阿部一郎  1年 3伊藤二郎  2年    東京都○○区 4上田三郎  3年 5江藤四郎  4年    大阪府○○市

  • エクセル DBから該当データを抜き出し帳票へ出力

    エクセルについて質問です。 エクセルのバージョンは2007を使用しています。 下記sheet1のようなデータがあるときに、sheet2に月ごとに集計し 順位ごとにまとめてB列にまとめて記載する帳票を作っているのですが (※ちなみにその形式を説明させていただきますと    該当者がいなければB列には空白を返し    該当者がいる場合はB列に個人ごとにまとめ、    (1)名前、(2)その月にその人がその順位をとった回数《1度のみの時は省略》、そして    括弧の中に(3)4月から積み重ねてその人がその順位をとった回数、(4)その時の場所 を記載し    すべて半コンマ(,)プラス空白で区切ってB列の1セル内に羅列しております) これをsheet1にデータを入力すれば自動的にsheet2のB列に 今の形式で反映されるようにしたいのです。 エクセルの関数でできるならばもちろんその方法を知りたいのですが もし不可能であるならばVBA?マクロ?なども勉強して組んでいければと思っています。 今はどのプログラムを使えば自動化できるのかについても理解しておりませんので どのプログラムをどんなふうに学んでいけばいいのかさえ見当がつかずじまいの状態です。 これを使ってこうすればできるよ、という方法をご存知の方がいらっしゃいましたら そのさわりの部分、ヒントだけでもかまいませんので教えていただきたいのです。 どうかよろしくお願いいたします。 <sheet1>     A     B     C      1   月   名前   成績   場所 2  4月   山田   1位    甲 3  4月   佐藤   2位    乙 4  5月   佐藤   2位    甲 5  5月   佐藤   2位    甲 6  5月   山田   3位    丙 7  5月   佐藤   4位    丁 8  5月   山田   2位    甲 <sheet2>     A    B 1  5月度成績 2 3  1位   空白 4  2位   佐藤2回(3, 甲, 甲), 山田(1, 甲) 5  3位   山田(1, 丙) 6  4位   佐藤(1, 丁)

専門家に質問してみよう