• 締切済み

excelでの検索・抽出

excelの質問です。 現在データを1つのファイル、8つのシートに入力したものがあります。 この中に指定したワードがあるか検索し、その検索されたワードと同列にある数値を抽出したいと考えています。 ただし、検索するワードは入力されているものと多少異なるため類似となります。 イメージとしてはexcelにある検索みたいなものです。 この検索機能が同時に複数同時に選択でき、かつ同列のワードを出力したいのです。 イメージ 検索シートに ga123456 re552468  と入力 他のシートに  123456  abe-001 e552468  eet-025  があったとする 入力した横に  123456 abe-001 e552468 eet-025 と出力させたいのですが、可能ですか? 解りづらくて申し訳ないのですが、宜しくお願いします

みんなの回答

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

 確認したいのですが、 >この検索機能が同時に複数同時に選択でき、かつ同列のワードを出力したいのです。 という事は、検索シートに例えば cdf7799xyz と入力した際には、 e が共通しているので、入力した横に A列(入力欄)  B列(結果表示1)  C列(結果表示2) cdf7799xyz   123456 abe-001   e552468 eet-025 と表示させたいという意味であると考えれば宜しいのでしょうか?

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんばんは! VBAになってしまいますが・・・ 実際のデータ配置が判らないので↓の画像のような感じだとしての一例です。 「検索シート」はSheet見出しの一番左側にあり、「他のシート」は2番目以降にあるとします。 Alt+F11キー → メニュー → 挿入 → 標準モジュール → VBE画面に ↓のコードをコピー&ペーストしてマクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です) Sub test() 'この行から Dim i As Long, n As Long, k As Long, wS As Worksheet Set wS = Worksheets("検索シート") Application.ScreenUpdating = False For i = 2 To wS.Cells(Rows.Count, 1).End(xlUp).Row For k = 2 To Worksheets.Count For n = 2 To Worksheets(k).Cells(Rows.Count, 1).End(xlUp).Row If InStr(wS.Cells(i, 1), Worksheets(k).Cells(n, 1)) > 0 Then Worksheets(k).Cells(n, 1).Resize(1, 2).Copy wS.Cells(i, Columns.Count).End(xlToLeft).Offset(, 1) End If Next n Next k Next i Application.ScreenUpdating = True MsgBox "処理完了" End Sub 'この行まで ※ 各SheetのA列データが「検索シート」のA列の文字列に「含まれる」場合に表示!としています。 ※ 勝手に各Sheetのレイアウトを考えていますので、 レイアウトが違うとご希望通りに表示になりません。m(_ _)m

関連するQ&A

  • エクセルで検索→抽出

    お願いします。 シート(1)に次のように入力されています。 A列 B列 C列 D列 E列 → Y列 番号 県 性別 年齢 来社 1行目   1 東京 男  45 09/21  2行目   2 京都 女  33 10/07  3行目   3 福島 女  49 10/25  4行目   4 京都 男  25 12/05  5行目   5 東京 女  30 12/30  ↓ 以上のようにY列まで項目と、1110人のデータが 入ったシート(1)があります。 シート(2)に検索したい文字を入れて抽出する方法を教えてください。 例えば京都出身の人を検索したい場合↓ シート(2)の1行目にはあらかじめシート(1)の項目をコピーしておく 検索したい『京都』は「県列」の項目だから B列の2行目に『京都』と入力する。(1行目には項目) 3行目以降に検索結果↓が表示される。 2 京都 女  33 10/07  スイカ 4 京都 男  25 12/05  モモ 8 京都 女  58 05/04  りんご 12 京都 女  12 06/20  オレンジ また、年齢10~35を検索したりなどもできれば… データを入力したり検索したりするのは、パソコンに不慣れな方ですので エクセルに詳しくない人でも簡単に使用できるよう作成できればと思います。 以上、 検索項目を入力し、下の行に抽出されるような関数はありますでしょうか・・・? なければ近いものでも構いませんので教えてください。 宜しくお願い申し上げます。

  • 検索結果が複数のデータを抽出したい。

    通常用と特別用の2種類の入力用シートがあります。 これを別シートの出力用シートに反映したいのですがご指導をお願いします。 日付を検索値にしてVLOOKUPで抽出しようとしましたが、検索結果が複数になるので1つしか表示できません。 VLOOKUPの他にやり方があれば教えてください。

  • EXCEL 同シート内で抽出する方法を教えてください。

    EXCEL 同シート内で抽出する方法を教えてください。 現在、月日別に入力された大量のデータが、あります。 それを、同シート内に月別に抽出したいのです。 できれば、入力規制-リストで選択すると抽出するような形で ※イメージを添付しました お手数かけますが、よろしくお願いします。

  • excelのデータ抽出?検索?についておしえてください。

    excelのデータ抽出?検索?についておしえてください。 エクセル2003で sheet1に次のようなデータがあります。   A列  B列  C列     D列  E列 ・・・ 1 組   番号  氏名     古典  現文 ・・・  2 1   1   青木 優    3 1   2   池田 洋子   4 1   3   植村 美紀   ・ ・ sheet2には1組の成績が sheet3には2組の成績が入っています。 クラスによって科目が違います。 この「氏名」と1行目の「科目名」が一致するデータを 他のシートから読み出してくる関数がありませんでしょうか 青木さんの古典を1組のシートから読み出すといった感じです。 説明がへたで 申し訳ないのですが うまく検索ができなくて困っています。 ぜひ くわしいかた教えてください。 どうぞ よろしくおねがいします。

  • エクセルデータ抽出方法を教えてください

    エクセルでのデーター抽出方法を教えてください、シート1:A1にUA1と入力し、シート2:A列にはUA1・・・・複数のデータが縦に並んでいます、シート1:A1に入力したデーターを元にシート2:A列を検索し該当するデータの抽出を行いたいです、VLOOKUPではうまく行きません教えてください

  • 検索後、行を抽出するマクロ

    エクセルのシート1、A列からE列まで1~800のセルにテキストが入力されいます A列を検索(部分一致)し、ヒット(複数)した行をシート2へコピーしていのですが出来ません。 因みに、A列は文字列で「赤エンピツ、黄エンピツ」などでエンピツと検索してら両方抽出したいです。 初心者で何も判らず本等を読んでも訳判りません、どなたか御教授よろしくお願いします。

  • EXCEL データの検索・抽出

    シート1と2に同じようなデータがあり   A   B   C    D    E    F 1 001  100 りんご  1個  @100  \100 2 001  101 みかん 1個  @110  \110 3 002  200 なし   2個  @120  \240 4 002  201 かき   3個  @130  \360 といったように最初にコードがあり、その中に違うコードがあるのですが、これを1行ずつ見比べて無いデータ、数値が違う(個数や単価)データを抽出したいのです。 シート1と2のデータは並び方もバラバラでシート1にあるデータが2にないデータもあります(そのデータは特に必要ありません) ※無いデータと数値が違うデータは別々に抽出したいので最後にオートフィルタがかけられるようにしたいです。 EXCEL2000です。宜しくお願いします。

  • エクセルで複数シートから、検索して抽出

    はじめまして、右も左も分からない初心者です。 説明出来ないんですが、よろしくお願いします。 【ご質問内容】 エクセルは、XPを使用しています。 エクセルのVBAで、指定したキーワードを 含むデータを抽出したいと思っています。 【例】 Sheet1 A B C D E 1 番号 氏名  郵便番号  住所  メールアドレス 2 1   ○   △    大阪府   ○○ 3 2   △   ○    茨城県   ○○ Sheet2  A  B    C     D      E 1 氏名 番号 郵便番号  住所  メールアドレス 2 ○  1   △    福岡県   ○○ 3 △  3   ○    茨城県   ○○ と各シートに、列がそれぞれバラバラになっています。 茨城県を検索すると、新しいシートに、 Sheet3  A  B    C     D      E 1 氏名 番号 郵便番号  住所  メールアドレス 2 2   △   ○    茨城県   ○○ 3  A  B    C     D      E 4 氏名 番号 郵便番号  住所  メールアドレス 5 △  3   ○    茨城県   ○○ という風に、抽出したいと思っています。 どうしたらいいでしょうか?? よろしくお願いします。

  • 複数シートから検索し、その行から15列下までを抽出したい。

    使用しているのはWINDOWS XP EXCEL2000です。 マクロ、VBはあまりよくわかっていません。 ひとつのファイルに6sheetあります。 シートY1~Y6があり、シートY1のB1に入力されたデータと同じものをシートY1~Y6全てから検索し、 その行から15列したまでを抽出するということをしたいのです。 現状は1シートのみからの検索で、A3からA17までMATCH関数とINDEX関数が入っていて抽出しています。 (下記のように関数が入っています。)  YIシート A3 → =MATCH(B1,T1_A1!D:D,0) B3 → =INDEX(T1_FMRA!E:E,A3,1)  YIシート A4 → =A2+1 B4 → =INDEX(T1_FMRA!E:E,A4,1) ↓ ↓  YIシート A17 → =A16+1         B17 → =INDEX(T1_FMRA!E:E,A17,1) これをA1に入力されたデータを全シートから(Y1~Y6)検索、抽出する方法が知りたいのですが・・・ 説明がわかりづらくすみません。 よろしくお願いいたします。     

  • 検索後、削除や抽出するマクロ

    エクセルのシート1、A列の1~1500のセルにテキストが入力されており ある特定のテキストを含むセルを全て シート2のA列に抽出したいのですが、検索してみましたがうまくできません。 作業の流れとしては シート1のA列を範囲指定し、編集-検索、検索する文字列を入力し、すべてを検索をクリック 検索結果をコピーし、シート2のA列に貼り付ける もうひとつはシート1、A列の1~1500のセルにテキストが入力されており テキスト1またはテキスト2を含むセルを全て削除するというマクロを作成したいです。 ご指導のほどよろしくお願いいたします。

専門家に質問してみよう