Excelデータベースから目的の内容を抽出する方法

このQ&Aのポイント
  • Excelデータベースから目的の内容を抽出する方法を紹介します。データベースにはID1、ID2、内容の項目があります。まず、ID1を昇順に並べ替え、抽出したい20個のID1とそれに対応する内容を別のシートに抽出します。次に、ID2を昇順に並べ替え、抽出したい20個のID2とそれに対応する内容を別のシートに抽出します。VLOOKUP関数はID2が昇順になっていないため使用できませんので、この方法を使って目的の内容を抽出してください。
  • Excelデータベースから目的の内容を抽出する方法について説明します。まず、データベースにはID1、ID2、内容の項目があります。ID1を昇順に並べ替え、抽出したい20個のID1とそれに対応する内容を別のシートに抽出します。次に、ID2を昇順に並べ替え、抽出したい20個のID2とそれに対応する内容を別のシートに抽出します。VLOOKUP関数はID2が昇順にならないため使用できませんので、この方法を使って目的の内容を抽出してください。
  • Excelデータベースから目的の内容を抽出する方法について詳しく説明します。まず、データベースにはID1、ID2、内容の項目があります。ID1を昇順に並べ替え、抽出したい20個のID1とそれに対応する内容を別のシートに抽出します。次に、ID2を昇順に並べ替え、抽出したい20個のID2とそれに対応する内容を別のシートに抽出します。VLOOKUP関数はID2が昇順になっていないため使用できませんが、この方法を使えば目的の内容を確実に抽出することができます。
回答を見る
  • ベストアンサー

Excelでデータを抽出

エクセルでデータベースを作成しました。 このデータベースから目的のものだけを別のシートに抽出したいです。 データベース A ID1 B ID2 C 内容 この内容が100行書かれているとします。 ある20個のIDの内容だけを別のシートに抽出したいのです。 ID1を昇順にならべるとID2は昇順にならないようなIDになっています。 なので、VLOOKUPがつかえません。 ID1から抽出したいもの20個を選んで、シート2へ選んだ内容のID1と内容を抽出 ID2から抽出したいものを20個選んで、シート3へ選んだ内容のID2と内容を抽出 どの様にしたら出来ますか? うまく説明できなくてすみません。 宜しくお願いします。

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.1

IDに重複がないならVLOOKUPの最後の引数をFALSEにしてください。 そうすれば昇順にしないでも抽出できます。 ただしIDが存在しない場合は#N/Aというエラーが表示されます。 シート2 B2=VLOOKUP(A2,Sheet1!$A$1:$C$100,1,FALSE) C2=VLOOKUP(A2,Sheet1!$A$1:$C$100,3,FALSE) シート3 B2=VLOOKUP(A2,Sheet1!$B$1:$C$100,1,FALSE) C2=VLOOKUP(A2,Sheet1!$B$1:$C$100,2,FALSE) の様になります

shinarin
質問者

お礼

ありがとうございます FALSEにすれば良いのですね。初めて使いました。 早速やってみましたが、うまく機能しました。

その他の回答 (1)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

フィルタオプションで抽出後、コピーしたらどうですか。

shinarin
質問者

お礼

ありがとうございます。 DBの内容が変更された場合ソースを参照して変更してほしいので、コピーだと修正内容が反映されないので、フィルタオプションは使えなかったのです。

関連するQ&A

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

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

  • エクセルのデータ抽出について

    基本的な内容かもしれませんが、どうしてもわからないので教えてください。   A B C D 1 1 b 3 c 2 2 t 4 y 3 3 r 3 o 4 4 l 5 p 5 5 k 3 w 上記のようなデータベースがあったとします。このシートと異なるシートのあるセルにたとえば3と入力すると   A B C D 1 1 b 3 c 2 3 r 3 o 3 5 k 3 w のようにC列が3である行が抽出され、なおかつA列の昇順で並ぶということをしたいのですが、vlookup等ではうまくできません。 フィルタを使用せずに実現したいのです。お願いします。

  • Excelでデータ抽出!

    かなり切羽詰ってます。助けてください。 excelで3×15の表を作ってそこからデータを抽出したいのです。列と行の数値はそれぞれ別のセルからの参照にしたいのですが...。ifとかvlookupとかいろいろ使ってみたのですがうまくいきません。エクセルでゆーところの'B3'を出したいだけのことなのですが...。誰か助けてください。

  • Excelでのデータ抽出

    Excelに複数シートがあり、各シートには以下の内容が記載されてます。  A列 伝票No.  B列 日付  C列 担当者  D列 型番    ・    ・    ・ B列で任意の日付を検索し該当する値があれば、その行(A~D…列)を別シートにコピーし抽出したいのです。 VBAを使ってやりたいのですがどうしたらよいでしょうか? よろしくお願いします。

  • Excelでのデータ抽出

    Excelで外部結合風のデータ抽出を教えてください。 シートAとシートBに表形式のデータがあり、 シートAのA列の値とシートBのA列の値が一致するシートBの 行を抽出するのが目的です。 具体的には次のような感じです。 シートA         シートB ----------------  ---------------- A列 | B列 | C列     A列 | B列 | C列 ----------------  ---------------- 2  | 2B  | 2C      1  | 1BB | 1CC ----------------  ---------------- 4  | 4B  | 4C      2  | 2BB | 2CC ----------------  ---------------- 6  | 6B  | 6C      3  | 3BB | 3CC ----------------  ---------------- ↓ シートB ---------------- A列 | B列 | C列 ---------------- 2  | 2BB | 2CC ---------------- 以下以外の方法がありましたら教えてください。 1)アクセスに両シートのデータを取り込み、2つのテーブルを外部結合で連結させる。 2)マクロで二重ループをつくり、A列が一致した行を取り出す。 よろしくお願いします。

  • excel データの抽出について

    仕事でexcelの表からデータを抽出して資料を作成したいと思っています。 ≪シート1≫表から≪シート2≫表へ「1が立っているデータのタイトル(あ~お)を抜き出したいのです。どなたか方法があれば教えてください。(できればVBA等を使わないで作りたいです。) ≪シート1≫     あ い う え お A  1    1 B     1 1   1 C         1 1 ≪シート2≫ A あ う B い う お C え お

  • 必要なデータを抽出したい

    必要なデータを抽出したい    A   B    C   D ・・・ 1 7/1   101   102  103 2 7/2   101   103 3 7/3   105   203 4 7/4   103   205 5 7/5   101   202 ・ ・    ・ ・ ・    ・ ・ ・    ・ Excelで上の様にA列に日付、B行列以降に数字が書かれているシートから、抽出したい数字が含まれている行を別シートに抽出するマクロはどのように書けばよろしいのでしょうか。 技術者の方、よろしくお願いします。 例えば、101が含まれているデータを抽出したら、sheet2に    A   B    C   D 1 7/1   101   102  103 2 7/2   101   103 3 7/5   101   202 となるようにしたいのです。

  • データ抽出について

    エクセル初心者です。 エクセル2003を使っています。 sheet1に元データとなる表があります。 ・データセル内は数値データです。 ・行方向へは200程度 ・列方向へは1500程あります。  A   B    C    D   E     F  1日付 項目1 項目2 項目3 項目4 項目5 ・・・ 2 3 4 5 6 この元データからsheet2へ日付をキーにして行データを抽出したいのです。 抽出先のsheet2のA列に予め目的の日付データのみ1200程入っています。 最初Vlookupでやり始めたんですが無理と分かりました。 フィルタオプションで試みたのですが、「検索条件範囲」の式の書き方が 分からず困っております。 OKWaveの関連したQAを参考に試行錯誤を続けていましたが、進展がありません。 お詳しい方よりのご回答をお待ちしております。

  • エクセル 大量のデータから抽出し自動表示

    エクセルのSheet1のC列に大量(3500件くらい)のデータがあります。このデータは毎日さらに増えます。D列にもおなじだけのデータがあります。 (E列・F列にはあとから別のデータをさらに入力していきます。) Sheet1 A B C D E F     1 2 3 4     2 3 4 5      1 3 5 6     3 5      2 4      ・ ・     ・ ・ こんな感じです。 今回、このC列に入っているデータを検索し、完全に一致したデータのみを別シートに抽出したいのです。 C列にはいろいろな数字が入っていて、同じものもありますが、D列にも同じ数字とは限りません。 なので、VLOOKUPは使用できないのかと思っています。 一致したデータはその行をすべて別シートに抽出したいです。 検索をかけて一致しないデータがあった場合もその検索した数字は残しておいてさらに今後一致になるまでデータを残しておくという方法はできますでしょうか。 エクセルは2003です。 よろしくお願いします。

  • EXCELから効率よくデータ抽出したい

    EXCELのデータが20万行あります。 この中から、データを抽出したいのです。1個なら検索で良いかと思うのですが、20個とか30個とかの場合は、どうすれば効率が良いのでしょうか? 今やっているのは、こんな感じです。 EXCELの20万行のデータを(1)とします。 抽出したいデータを(2)とします。 (1)には重複不可のキーとなるIDがあります。(2)には調べたいIDが入っています。 (1)のとなりに(2)を貼り付け、IDを頼りに(1)から(2)のデータをvlookupします。 そこで#n/aとならなかったデータが対象・・・としています。 ただ、(2)のデータが全て(1)に含まれているわけではなく、含まれていないものは他のテーブルから抽出します。((1)のテーブルは20個ほどあります) そのため、今度は(2)のIDをキーにvlookupをして、(1)から抽出されなかったデータを絞っています。 また、(2)に入っているIDに無駄な空白があったり・・・とデータの整形もあります。 現在、データが重い上にかなり手間がかかっています。ACCESSのクエリーを使えば早いのでしょうが、EXCELのデータで各カラムにいろいろなデータが入っているために(フィールドが整理されていない)カンタンに移行できそうもありません。 やっぱり、ここは何とかAccessへ移行させるべきでしょうか? 20万行のファイルを20個1つのAccessにすればやはり重くなりますでしょうか? すみません。よろしくお願いします。

専門家に質問してみよう