エクセルの抽出方法についての質問

このQ&Aのポイント
  • エクセルの抽出方法について質問があります。VBAでもできる方法があれば教えてください。
  • エクセルのシートAには受注番号、商品名、値段、消費税があります。シートBで特定の受注番号の商品の値段を抽出し、合計額を算出したいです。
  • オートフィルタではなく、別の方法で抽出することはできますか?お知恵をお貸しください。
回答を見る
  • ベストアンサー

エクセルの抽出なんですが

すみません、エクセルの抽出について 以前ここで質問させて頂いたんですが、また新たに別の抽出をしたいのですが・・・ VBAでも簡単であればいいのですが、 できれば数式で教えていただけないでしょうか? 内容ですが、 シートA(データ用)の B列に受注番号があります。 C列にその受注番号の詳細として商品名が入っており、 D列にはC列に対しての値段が入っております。 さらに、C列の最後には消費税の項目があり、 同じD列にその消費税の価格が入っています。 これが受注番号ごとに記載があり、 商品の個数は受注番号によって異なります。 これを基にシートB(抽出用)で 受注番号に対して(打ち込めば) その商品の値段を個数分全て抽出させ、最終は合計額が知りたいのですが、 でも、最後にある消費税は除外させたいです。 消費税の抜き方は個数に対して最後なのでこの条件から抜くのがいいでしょうか? 別の列にコード欄があり、消費税のコードは決まっていますので この条件を使ってできますでしょうか? オートフィルタとは違った考え方かなと思ったので こちらで質問させていただいたのですが 本当に申し訳ありませんが、どなたか教えてもらえないでしょうか? 宜しくお願いします。

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

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

B列の受注番号が各行に記載されているならピボットテーブルを使うのが一番楽ですね。 B列の受注番号をページ C列の商品名を行見出しで、“消費税”を除外 D列の金額をデータで合計 http://www.officepro.jp/exceltips/pivot/ 関数で行う場合 Excel2007以降なら =SUMIFS(シートA!$D:$D,シートA!$A:$A,受注番号のセル,シートA!$C:$C,商品名のセル) Excel2003以前なら =SUMPRODUCT(シートA!$D2:$D99,(シートA!$A2:$A99=受注番号のセル)*(シートA!$C2:$C99=商品名のセル))

gooryogoo
質問者

補足

一応作ることはできたのですが、 すこーしニュアンスが違うので、 添付して改めて質問させていただきます。 すみませんでした。 またよろしくお願いします。

その他の回答 (1)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

質問の意味がいま一つわかりにくいのですが、ご希望の操作は、B列の受注番号が同じデータの商品名と価格を抜き出したいという意味でしょうか? もし添付画像のようなレイアウトなら、それぞれ以下のような数式で、商品名と価格を表示することができます。 G2セル(下方向に適当数オートフィル) =INDEX(C:C,SMALL(INDEX(($B$2:$B$20<>$F$2)*1000+ROW($B$2:$B$20),),ROW(A1)))&"" H2セル(下方向に適当数オートフィル) =IF(G2="","",INDEX(D:D,SMALL(INDEX(($B$2:$B$1000<>$F$2)*1000+ROW($B$2:$B$1000),),ROW(B1)))) H13セル =SUM(H2:H12) #このようなご質問では、文章で説明するだけでなく、実際のデータシートのデータ例や抽出結果のリストのレイアウトなどを、添付画像や本文中に記載するなどして、わかりやすく具体的に説明したほうが期待する回答が得られやすいと思います。

gooryogoo
質問者

補足

その通りですね。 すぐに改めて質問させていただきます。 すみませんでした。

関連するQ&A

  • エクセルで抽出なんですが。。。

    エクセルで抽出なんですが。。。 1つのファイルにAというシート Bというシート があります。 それぞれのシートの中に共通した受注番号を振ってる列があります。 Bのシートでその受注番号の行に確定した金額をいれたら、 Aのシートにも反映させたいのですが、 どういう関数をつかえばよろしいでしょうか? 場所は決まっていませんので、 共通の項目(受注番号)を条件に使いたいと思ってるのですが・・・ すみませんが、よろしくお願いします。

  • エクセルの順位抽出について

    Sheet1のA列にコード、B列に商品名、C列に分類 D列に売上数、 E列に売上金額を入力した一覧表があります。 A_1:1000 B_1:牛肉 C_1:食品 D_1:20 E_1:3000 A_2:1050 B_2:お茶 C_2:飲料 D_2:18 E_2:3010 A_3:2000 B_3:鉛筆 C_3:文具 D_3:12 E_3: 900 A_4:2050 B_4:お米 C_4:食品 D_4:12 E_4:9010 A_5:3000 B_5:牛乳 C_5:飲料 D_5:25 E_5:2000 A_6:3050 B_6:定規 C_6:文具 D_6:28 E_6: 700 中略 A_300:10000 B_300:肉まん C_300:食品 D_300:38 E_300:9000 1.食品対象で売上金額の上位20のコードをSheet2のA列に表示 2.全商品対象で売上金額の上位20のコードをSheet3のA列に表示 上記の様な抽出をしたいのですがどの様な関数を使用すれば良いでしょうか? (オートフィルタを使用してのコピペという手作業をなくすためにSheet1の内容が更新されれば自動でSheet2,3の内容も更新されている のが希望です) よろしくお願いします。

  • 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です。宜しくお願いします。

  • エクセル抽出・コード番号から受注日→支払日

    試行錯誤しましたが、行き詰ってこちらに質問させて頂きます。 エクセルのシート1に取引先コードと取引先名、支払予定日一覧を作り、 シート2に受注一覧表を作りました。 1.受注番号 2.受注日 3.取引先コード 4.取引先名 3担当コード 4.担当名  ↓  ↓ といろいろ列がありまして、最後に支払予定日を取引先コード表から抽出したいのです。 取引先コード表の支払条件の関数を末締め、20日締めの翌10日払いとか入れて、 受注一覧表に抽出させるには、受注日が反映されないといけないのですが、 どうやって、受注日に対してコード表の支払日を抽出させればいいのかがわかりません。 うまく説明できないのですが、やりたいことは、取引先コードを入れれば、受注日と金額の 入力で支払予定日が出るようにしたいのです。 お時間のある方、よろしくお願いいたします。

  • エクセルのデータ検索&抽出作成について

    Excelの別シートでの検索と抽出について ExcelファイルでSheet1~5まで部署別の発注データで項目は下記の通りA列~G列まですべて同じになっているものがあります。 A列 B列 C列 D列 E列 F列 G列 注文番号 商品名 納品日 納品先 発注額 消費税 合計額 別シート(Sheet6)に「商品名」や「納品先」で検索する項目を作成し、その結果を表示できるようにしたいのですが何か良い方法はないでしょうか? マクロ・VBAでの作成方法もあればお願いします。 Excelのバージョンは2010です。 並べ替えとフィルター → 詳細設定 → フィルタオプションの設定 で試してみましたが、検索する商品名(納品場所)を変更してしまうと抽出されませんでした。 宜しくお願いします。

  • エクセルのフィルタオプションの検索条件について

    ■受注データ.xls Sheet1    A      B     C     D 1  商品番号  カラー   サイズ  商品コード 2  123     白     M 3  123-A    BLK     S 4       ・ 5       ・  6       ・ ■商品マスタ.csv Sheet1    A      B     C     D 1  商品番号  カラー   サイズ  商品コード 2  123     白     M    AAA 3  123-A    BLK     S    AAB 4       ・ 5       ・  6       ・ 上記の受注データ.xlsの「商品コード」に、商品マスタ.csvの 「商品コード」を転記したいです。 ※「商品コード」は、「商品番号」「カラー」「サイズ」が同じ  場合のみ一致します。 CSVデータが30万件以上あるため、 商品コードが合致するデータのみ別シート、もしくは別ブックに データを抽出する形で行おうと思い、フィルタオプションを使用したいです。 この場合検索条件の数式をどのように指定すればいいでしょうか。 何卒よろしくお願いいたします。

  • エクセル 複数の条件を抽出

    エクセルで複数の条件を抽出する方法について教えてください。 sheet2には以下の表があります。 A列  商品名1 B列  商品名2 C列  評価1 D列  評価2 sheet1には複数のデータがあり、そのデータを使って商品名と評価を出しています。 (商品名は手入力して、評価は関数を使って数値を出しています。) ここから、評価1がある値以上かつ評価2がある値以上の商品名1と商品名2をsheet3に抽出したいのです。(実際にやりたいのは、評価1が2%以上かつ評価2が0.9以上という条件です。) sheet3に出したいのは見やすいと思ったからで、どうしてもというわけではありません。 商品名が分かれているのはsheet2で作業がしやすいように分けています。必要であれば統合します。 評価1は書式設定で%表記にしています。 一応自分なりに調べてはみたものの、全くの初心者な為わかりませんでした。 初心者でもわかるように教えていただければありがたいです。

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

    関数初心者なので、どんな関数を使えば簡単に抽出できるのかわかりません。下のようなデータがあるとしたらどんな方法があるでしょうか?    A      B     C    D 1 受注番号  業務内容   担当  金額 2  1     ○○○   伊藤   20000 3   1 ○○○   伊藤   5000 4  1     ○○○   伊藤   5000 5  2     ○○○   佐藤   25000 一つの受注番号でいくつかの業務があるとして、伊藤が担当した受注分の各受注番号ごとの金額の合計を抽出したい。

  • <EXCEL>複数の条件を指定して抽出

    データの抽出に関して分からないことがありましたので質問させてください。 現在顧客管理表を作成中で、顧客リストから条件に合うデータを抽出し、 そのデータの個数を同シート内に表示させるような作りになっています。 そのひとつの数式が以下のような感じです。 =SUMPRODUCT((INDIRECT("C3"):C190="○支店")*(INDIRECT("D3"):D190="新規")*INDIRECT("A3"):A190) "範囲 B3:M190の顧客リストからC列(支店名)が『○支店』、かつD列(契約の種類) が『新規』のものを抽出し、個数を表示させる"・・・という数式なのですが、 (A列には、オートフィルにも対応させるため1を表示させる別の数式を入れています) この条件を"C列が『○支店』または『△支店』、かつD列が『新規』のものを抽出" と変えるには、どうすればいいのでしょうか・・・ 単純な内容なのかもしれませんが、教えていただけると助かります。 よろしくお願いします。

  • エクセル 2枚のシートの違いを抽出したい

    目を通していただきありがとうございます。 エクセルは全く詳しくないため、質問させていただきます。 sheet1とsheet2に各2000行ほどの表があります。 sheet1 A列(商品) B列(産地) C列(定価) D列(特価) E列(数量)  みかん    愛媛     100      80       500  みかん    静岡     120      85       400  オレンジ  アメリカ     150      90       100   sheet2 A列(商品) B列(産地) C列(定価) D列(特価) E列(数量)  みかん    愛媛     100      80       300  オレンジ  アメリカ     150     100       100  いちご     福岡     300     150       100  みかん    静岡     120      70       400 それぞれ「1行目のみかん」はA~D列まで同じ値で、E列のみの違いですので、 抽出の必要はありません。 sheet2の3行目のいちごはsheet1にはありませんので、これも抽出の必要はありません。 sheet1の2行目とsheet2の4行目のみかん、 sheet1の3行目とsheet2の2行目のオレンジ、はD列(特価)の違いがあります。 この<D列のみ違いがある>ものを行単位でsheet3に抽出したいのですが、 何か良い方法(関数等)がありましたら、教えていただけないでしょうか? なお、表題に「エクセル」と書きましたが、実際はKingsoftのSpreadsheets 2012を使用しています。 基本的な関数でしたらそのまま使えるようですので、エクセルとして書かせていただきました。 よろしくお願いいたします。     

専門家に質問してみよう