• ベストアンサー

エクセル 検索したデータを1行抽出するには

fumufumu_2006の回答

  • ベストアンサー
回答No.4

ANo.3です。 >「持っている免許が1になる」ということは、 >やはり、ANo.1さんの上のデータのように、「コード」ではなく、「コード名」で「再度表を作り直す」か、または「別の表を作らないといけない(ダミー表)」ということでしょうか。 >シート1の表は形を崩したくありません。 >ということは、「ダミー表を作らないといけない」ということでしょうか。 回答に書いた通りにやってみてもらえれば、どうなるかわかると思いますが・・・ やってみてもらえないんでしょうか? また、sheet1に手を加えない場合です。 まず、sheet2に、Sheet1のA1:F1(みだし)をコピーします。 sheet2の A2:=IF(ISNA(MATCH(1,Sheet1!C2:E2,0)),"",Sheet1!A2) これを人数分下へコピーしてください。 B2:=IF($A2="","",IF(Sheet1!B2="","",Sheet1!B2)) これをB:F列で人数分下へコピーしてください。 sheet3の A2:=IF(ISNA(MATCH(2,Sheet1!C2:E2,0)),"",Sheet1!A2) これを人数分下へコピーしてください。 B2:=IF($A2="","",IF(Sheet1!B2="","",Sheet1!B2)) これをB:F列で人数分下へコピーしてください。 sheet4の A2:=IF(ISNA(MATCH(3,Sheet1!C2:E2,0)),"",Sheet1!A2) これを人数分下へコピーしてください。 B2:=IF($A2="","",IF(Sheet1!B2="","",Sheet1!B2)) これをB:F列で人数分下へコピーしてください。 これは、各シートのA2のMATCH(?,Sheet1!C2:E2,0)の?の部分の値がsheet1のC2:E2の間にあるかないかで表示するかしないかが決まります。 B2:F2は、A2に表示がある場合に表示します。 これを下方向にコピーします。 どんな表示になるかは、やってもらえればわかると思います。

pyhcool
質問者

お礼

再度の回答、本当にありがとうございます。 その後、フィルタオプションの設定をマクロ化させる方法を教わり、行ったところ、 希望通りにスムーズに抽出処理をすることができました。 ここまで丁寧に解説までしていただき、ありがとうございます。 今回fumufumu_2006さんに教えていただいた方法は、習得し、使えるようになっていきたいと思います。 本当にありがとうございました。

関連するQ&A

  • Excel VBA 検索して該当行を抽出

    はじめまして、下記のように、Excelでマクロを組みたいのですが 組み方がわかりません。 ご教授願えませんでしょうか。 MS Ofiice2010 生徒数500名ほど シート1には生徒の生徒番号、氏名などがあります。      A     B     C     D 1 生徒番号   氏名   備考 2 120001     田中 3 120002     山田  試験時休み 4 T120009    相田   転入 シート2には生徒の成績表:生徒番号、氏名、国語、算数、理科、社会 生徒番号でソートされていません。      A     B     C     D     E     F    1 生徒番号   氏名   国語   算数   理科   社会   2 120001     田中   80    65     65     75 3 T120009    相田   90    85     80     80 シート1の生徒番号でシート2生徒番号を検索して、該当したら成績を シート1の検索した生徒番号のD列以降にコピーしたいのですが      A     B     C     D     E     F     G 1 生徒番号   氏名   備考   国語   算数   理科   社会 2 120001     田中         80    65     65     75 3 120002     山田  試験時休み 4 5 10 T120009    相田   転入    90    85     80     80 お手数ですが、ご教授願えますでしょうか。 よろしくお願いいたします。

  • 1行から2行へのコピーなんですが

    データベースとなるシートの任意の連続する複数行を違うシートの2行にコピーしたいと考えています。 要は、 番号、氏名、社員番号、生年月日・・・と続く1行のデータを 印刷するためのシートへ 番号、社員番号・・・ 氏名、生年月日・・・のように2行にしたいのです。 1行から1行であればエクセルの基本的な機能で出来ますが、 1行から複数の行へ、終わったら次の行へ移る、の2点でつまづいております。 マクロ初心者へアドバイスお願いします。

  • Excelの検索について

    シート1に、 A列 B列 C列 …G列 氏名 番号 年月日1 …年月日2 が入力されています。 B列[番号]が"3"のときのみ、それと同じ行のA列[氏名]、C列[年月日1]、G列[年月日2]をシート2に、上から詰めて返す方法を教えてください。 難しく考えずに、VLOOKでいけるのでしょうか。

  • エクセル2007 データ抽出(関数)について

    教えてください。エクセルシートにて郵便番号と住所が重複しているデータを抽出したいのです。 例)ある顧客の情報として、シート1のA列に、1から10までの新規顧客の氏名、B列には生年月日が入力されています。C列,D列は空白で、E列には全ての顧客(新規顧客を含みます)の氏名、F列には生年月日、G列には郵便番号、H列には住所が入力されています。このふたつの情報の中から、新規顧客データと全ての顧客データの氏名、生年月日が重複している顧客のみ、C列にその郵便番号、D列に住所を表示させたいのです。 OSはXP エクセル2007です。 困っています。よろしくお願いします。

  • Excelにおけるデーター抽出

    Excelのシートに記載されている内容は次の通りです。 (1) セルA5~A60の間に1~56の昇順の番号 (2) セルB5~B60には氏名 (3) セルC5~C60には○、×、△の記号 このシートからC列が ○ の記号が付与されている者だけの氏名を別のシートのB7~B**の間に抽出するのですが、抽出したシートの行に空白ができないようにするには式をExcel関数で作成することは可能でしょうか? 若し、不可能でしたらマクロで行う場合のプログラムを教えて下さい。

  • <エクセル>マクロを使ってデータを入力したいのですが・・

    エクセル初心者のため、 どなたかご存知の方がいらっしゃいましたら教えていただけないでしょうか。 エクセルで、ある申込書のフォームにデータ(氏名・フリガナ・生年月日・年齢等を入力したいのですが100名分くらいあるためマクロを作って元データからコピーできれば・・と考えています。 100人分の元データはSheet1にあり、 1名につき1行で、A1に氏名、B1にフリガナ、C1に生年月日・・・(~F1まで)となっています。(~100行目まで) そのデータをSheet2にある申込書フォームの該当欄にコピーしたいのですが、簡単な方法はありますでしょうか。 Sheet2には10名分の入力欄があるので、、 Sheet1の1行目の人のA1(氏名)のデータをSheet2のB12(氏名入力欄)へ、 Sheet1の2行目の人のA2(氏名)のデータをSheet2のB14(氏名入力欄)へ、 ・・・・・ Sheet1の10行目の人のA10(氏名)のデータをSheet2のB30(氏名入力欄)へ、 という感じでコピーしていきたいです。 (フリガナ、生年月日、年齢などそれぞれ欄があります) とりあえず10人分ずつSheet2にコピーできるマクロが組めれば大変助かるのすが・・・。 説明も上手にできず申し訳ないのですが・・・。 私の知識レベルでは100人分こぴぺこぴぺする方が早いのかもしれませんが どなたかアドバイスをいただければ大変うれしいです。 どうか、宜しくお願いいたします。

  • Excelで抽出

    初めまして。よろしくお願いします。 Excel2000を使っています。 例えば、 A列     B列   C列   D列 お客様番号  氏名   契約日  生年月日  :      :    :    : という表があるとし、データは2000件ほどあると 思ってください。 1行目から最終行までみて、 『同一氏名』&『同一契約日』&『同一生年月日』の ものを違うシートに表示させたいのですが、 こういうことってExcelで出来るのですか? 出来るのであれば是非教えてください。 質問するのは初めてなので お手柔らかに・・・m(__)m

  • EXCELでの検索マクロを作りたいのですが

    マクロの初心者です。氏名の検索マクロを作成したいのですが分かりません。 A列:名前 B列:郵便番号 C列:住所 と 名前等のデータを(ランダムに)入力したシート1を作成し、 シート2にシート1の「A列:名前」から性(たとえば青木)で検索して検索ボタン(マクロボタン)を押して該当データを表示させるようにしたいのですが。

  • エクセルで、2つの選択から、別シートの数字表示する

    恐れ入りますが、 エクセルで、2つの選択から、別シートの数字を 表示させたいのですが。  作業シート 1  番号 氏名 コード名  資格 取得日 2  112 阿部 A001    免許   参照シート 1  番号 氏名 コード名 資格 取得日 2  112 阿部 A001   免許 20130728 番号を入力しかつコード名を入力すると別シート の取得日が表示させるようにしたいのですが。 (コード名、資格は別の参照資格コード表より 表示させております(VLOOKUP)) 大変恐縮ですが、こちらが解決できないために、 業務が滞っております。 恐れ入りますが、ご回答のほう、よろしくお願い 致します。

  • エクセルについて教えてください。

    エクセルについて教えてください。 A、B、2枚のシートがあります。 Aには社員コードや氏名、住所や生年月日等の一覧を作成。 Bのシートの任意のセルに社員コードを入力すると 一定のセルにそのコードの人の情報を自動的に表示させる方法を教えてください。