• ベストアンサー

Excel関数である条件に満たしたものを抽出

Excel関数である条件に満たしたものを別シートに抽出したいのですが たとえばsheet1に A   B    C ID  名前   条件フラグ 101  太郎   1 102  花子   3 103  一郎   2 104  二郎   3 というデータがあってここから 条件フラグが「3」のものだけをsheet2に抽出したいのですが オートフィルタではなく関数で処理をしたいと思います。お分かりの方、ご教授ください。

  • hikson
  • お礼率41% (139/338)

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

  • ベストアンサー
  • EL-SUR
  • ベストアンサー率76% (83/108)
回答No.1

■作業列を使う方法 仮に D列を作業列にします。 Sheet1のD2: =IF(C2=3,ROW(),"") 下にフィルコピー。最終入力予定の行まで。 Sheet2のA2: =IF(COUNT(Sheet1!$D:$D)<ROW(A1),"",INDEX(Sheet1!A:A,SMALL(Sheet1!$D:$D,ROW(A1)))) ROW(A1)の A1は変更しないこと。 右のB2にコピー 必要なだけ下にフィルコピー ■作業列を使わない方法-配列数式 Sheet2のA2: =IF(COUNTIF(Sheet1!$C:$C,3)<ROW(A1),"",INDEX(Sheet1!A:A,SMALL(IF(Sheet1!$C$1:$C$100=3,ROW($C$1:$C$100),""),ROW(A1)))) 入力後、F2キーを押して編集モードにしてから Ctrl+Shiftキーを押しながらEnterキーを押して配列数式にします。( 数式が{  }で囲まれます ) 確定後、右に下にコピー 範囲を最大100行にしています。もっと多い場合は範囲を修正してください。 ただし範囲が広すぎると配列数式は重くなります( 処理が遅くなる )。 データ数が多いなら作業列を使う方法にしてください。

hikson
質問者

お礼

完璧です!! 分かり易い解説で大変参考になりました。どうもありがとうございます。

関連するQ&A

  • シート内の抽出について(Excel)

    シート内の抽出について(Excel) シート内に同じ文字列が複数存在するデータから抽出して使用したいのですが、ご存知の方おりましたら教えていただきたいのですが。 例    A   B   C   D  1 001  ABC 500  太郎 2 001  ABC 200  花子 3 001  ABC 150  太郎 4 002  DEF 500  次郎 5 002  DEF 200  三郎 6 002  DEF 150  次郎 7 002  DEF 100  次郎 このようなシートがあったとしますと 抽出条件として ’001’ とした場合 番号:001    A   B   C   D  1 001  ABC 500  太郎 2 001  ABC 200  花子 3 001  ABC 150  太郎 このように他のシートに抽出できればベストなのです。 データーが膨大なものでオートフィルターで抽出しコピー&ペーストでは時間がかかり過ぎてしまいます。関数でなんとかなればと思っておりますがお知恵をかしていただけないでしょうか?

  • Excel関数でデータを抽出する方法

    Excel初心者教室での課題で、以下のような問題を出されました。 次の表から、データが全てあるものだけを抽出し、sheet1からsheet2に移しなさい。 〈名前〉〈 E社〉〈 F社〉〈 G社〉 〈 A 〉〈 1 〉 〈 2 〉 〈 3 〉 〈 B 〉 〈 2 〉 〈 2 〉 〈 C 〉〈 3 〉〈 1 〉〈 5 〉 〈 D 〉 〈 1 〉 上の表からAとC(3社共にデータがある)ものだけを抽出したいのですが、回答条件が ●データ抽出にはオートフィルター機能は使用せず、関数で処理すること ●今まで習った知識で回答可能 とあり、まだ初心者クラスで、データ抽出に関係がありそうな関数はIF関数やVLOOKUPくらいしか思い当たらず、それらを使って抽出を試みたのですが「三社共にデータがあるものだけ抽出」という条件が処理出来ず、上手く出来ませんでした。 手詰まりで先に進めずに今、困っています。 そこで、Excelに詳しい方にアドバイス頂けたらと思い、書き込みしました。 宜しくお願いします。 文章力が低いので分かり辛い文面で、表も見辛くてすみません。

  • 【EXCEL関数】違うシートに抽出結果を出したい

    一覧表から「○」の条件が付いたデータのみを別シートに関数で抽出したいです。 フィルタではなく関数を使用したいのは、抽出したデータから名前の定義を使用して リスト表示をさせたいためです。ご教示のほど、宜しくお願いします。 シート1は一覧表となっており、A列に「○」のついたデータのみをシート2に表示 シート1(一覧表)   A  B 1  ○  山田太郎 2  ×  佐藤次郎 3  ○  高橋三郎 4  ×  鈴木四郎 5  ×  中村五郎 シート2(抽出結果を表示させる)   A  B 1  ○  山田太郎 2  ○  高橋三郎 3  4  5 フィルタオプション、当方の考え得る限りの配列関数等、色々試しましたが、 不勉強のために上手く結果が表示されませんでした。 ご教示のほど、宜しくお願い致します。

  • Excel(マクロ?VBA?)で最大日付の行を抽出

    Excelのデータ抽出で困っております。 下記のようなデータがあり、各IDの最大日付の行を抽出しようとしていますが、抽出方法がわからず、困っています。  氏名  ID   日付   山田太郎 10 2012/12/01 山田太郎 10 2013/08/01 山田太郎 10 2014/12/01 山田太郎 10 2015/08/01 山田花子 20 2012/12/01 山田花子 20 2013/08/01 山田花子 20 2013/12/01 この際に、 山田太郎 10 2015/08/01 山田花子 20 2013/12/01 という2つの行を抽出したいですが、抽出方法がわかりません。 関数を使ってやろうとも思いましたが、関数をどれを使えばいいかわかりません。 別シートに抽出でも全く問題ありませんので、恐れ入りますが、抽出方法を教えてください。 よろしくお願いいたします。

  • 条件を抽出し、フラグを立てる関数

    下記条件の場合、D列に「○」フラグを立てたいです。 D列に入力する関数を教えてください。 どうぞよろしくお願い致します。 ・ B列が同じ名前の行を抽出。 ・ 抽出した行のC列に「鉛筆」「消しゴム」「ペン」が入力されている場合、   D列に「○」をつけたい。 ・ ただし、B列が同じでも、C列に「鉛筆」「消しゴム」「ペン」以外が入っていた 場合、D列には何も入れない。 ※B列には飛び飛びに同じ名前が入力されている場合もあります。 ※行は1000行ほどあります。 【前】      B列    C列 山田太郎  鉛筆 山田太郎  ペン 伊藤二郎  缶 伊藤二郎  鉛筆 鈴木五郎  ペン 鈴木五郎  消しゴム 木村三郎  消しゴム 木村三郎  鉛筆 山田太郎  消しゴム 鈴木五郎  パソコン 【後】   B列    C列    D列 山田太郎  鉛筆    ○ 山田太郎  ペン    ○ 伊藤二郎  缶 伊藤二郎  鉛筆 鈴木五郎  ペン 鈴木五郎  消しゴム 木村三郎  消しゴム  ○ 木村三郎  鉛筆    ○ 山田太郎  消しゴム  ○ 鈴木五郎  パソコン わかりにくくて申し訳ありませんが、よろしくお願いいたします。

  • EXCEL2000オートフィルターのオプションでの抽出条件

    EXCEL2000使用の初心者です。よろしくお願いします。 オートフィルターのオプションで抽出条件を3コ以上指定したい時は、どのようにすれば良いのでしょうか? 又、出来ない場合は、他の手段をご教示いただければ嬉しいです。 シートは増やしたくありません。 理解力不足で、過去の質問は見たのですけど、よく判りませんでした。 申し訳ありませんが、よろしくお願いします。

  • 【Excel】オートフィルタの抽出条件を表の見出しに活用したいです。

    Excel初心者です。 オートフィルタである資料の一覧を作成しています。 例えば「2009年6月」という抽出条件でオートフィルタで抽出したときに その表の外につけた表題に、「2009年6月」という抽出条件を使用して表題を作成したいです。例えば、「2009年6月分入会一覧」といった風にです。 そのようなことはできますか? よろしくお願いいたします。

  • 条件抽出の方法について教えてください。

    以下の家族名簿から代表者だけ抽出するにはどうしたらよいのでしょうか?以下のテキストファイルの場合、1項目の番号が家族番号になります。 member.txt 1,山田太郎 1,山田花子 1,山田凛 2,田中一郎 2,田中桂子 3,佐藤圭太 3,佐藤洋子 抽出結果を、 山田太郎,田中一郎,佐藤圭太としたいのです。 以上、わかる方がいらっしゃればアドバイスお願いします。

    • ベストアンサー
    • CGI
  • Excel2003 オートフィルタで「*」を抽出

    Excel2003でオートフィルタを使って文字列「*」を含む行を抽出したいのですが、どのようにすれば抽出できますか?

  • Excel関数みたいに画像を抽出するには

    とある化学物質を別容器保管する時に使用するラベルを作成しようとしています。 Excelで製品のマスターデータに格納(セルサイズに合わせて配置した画像)を別シートで抽出関数(VLOOKUPやINDEX関数など)で値を抽出するように、格納した画像を抽出してセルサイズに合わせて配置する方法はないでしょうか。 画像以外の値はINDEX関数とMATCH関数を組み合わせて抽出しています。 ネットの文献で数式を使って画像を表示させる方法を参考にしたところ、名前の定義がうまくできませんでした。 〇ttps://k-ohmori9616.hatenablog.com/entry/2019/05/13/153347 Sheet構成は添付画像の通りです。 関数またはVBAで画像を抽出する方法はないでしょうか。 詳しい方いましたらご教授ください。 バージョンはExcel2016 です。

専門家に質問してみよう