関数を使ってデータの抽出方法について

このQ&Aのポイント
  • Win Excel 97を使用している状況で、sheet1には会社名と取引先会社名のデータが3000件程度あります。sheet2のB列以降に、sheet1の取引先会社名を列方向に抽出したいです。
  • マクロやVBAは苦手なので、関数を使って抽出方法を教えていただきたいです。
  • sheet2のA列には会社名があり、B列以降にはsheet1から抽出した取引先会社名が列方向に表示されるようにしたいです。
回答を見る
  • ベストアンサー

関数を使ってデータの抽出

win excel97を使用しています。 sheet1に下記のようなデータが3000件程度あります。   A       B      会社名   取引先会社名 2 aaa    ○○ 3 aaa    ■■ 4 bbb     △△ 5 bbb    ◆◆ 6 bbb     ●● 7 ccc    ×× sheet2のB~のセルに、sheet1の取引先会社名を列方向に 抽出させてたいのですがどうしたらよいでしょうか? マクロやVBAは苦手なので関数で教えていただきたいです。 sheet2   A      B        C       D 会社名 取引先会社名1  取引先会社名2 ・・・ 2 aaa   ○○      ■■      3 bbb   △△      ◆◆     ●●   4 ccc   ××      

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

  • ベストアンサー
  • losedog
  • ベストアンサー率66% (22/33)
回答No.1

VLOOKUP関数を使います。 とりあえず,関数作成をラクにするために, (1)Sheet2の1行目の「取引先会社名1」,「取引先会社名2」,・・・を「1」,「2」,・・・と変える。 (2)Sheet1のA列の前に列を挿入する。 (3)Sheet1のA1のセルに =B1&COUNTIF(B1:B$2,B1) と入力し,必要なだけ下へコピーする。 (4)Sheet2のB2のセルに =IF(ISERROR(VLOOKUP($A2&B$1,Sheet1!$A:$C,3,FALSE)),"",VLOOKUP($A2&B$1,Sheet1!$A:$C,3,FALSE)) と入力し,必要なだけ下・横へコピーする。 これでできると思います。

myichama
質問者

お礼

ありがとうございました!完璧に仕上がりました。VLOOk関数で試行錯誤していたんですが、COUNTIF関数も勉強になりました。

関連するQ&A

  • (EXCEL)重複したデーターの抽出について

    EXCEL2003 シート「sheet1」に下記のようなデーターがあります。 <sheet1>   A   B   C  D 1 りんご 青森 AAA BBB 2 みかん 愛媛 CCC DDD 3 みかん 青森 AAA BBB 4 りんご 青森 AAA BBB 5 みかん 愛媛 CCC DDD A列とB列が同じ値のものをシート「sheet2」に重複しているデーター は1行だけになり、E列にカウントした数が入力されるようにしたいです。 (C列やD列は同じ値でなくてもA列とB列が同じ値の時にカウントして抽出したいです) <sheet2>   A   B   C  D   E  りんご 青森 AAA BBB  2  みかん 愛媛 CCC DDD  2   ご教示のほどお願いします。

  • Excelの関数を使用したデータ抽出

    Excelの関数を使用したデータ抽出 Excelの関数を使用して以下のようなデータ抽出をすることは可能でしょうか? Aに以下の基本データがあります。 --------------- 型番 商品 価格 受注 出荷 仕入 No AAA りんご 100 1/1 1/1 80 001 AAA りんご 120 1/3 1/3 80 002 BBB みかん 200 1/1 1/1 90 003 BBB みかん 210 1/5 1/5 90 004 BBB みかん 220 1/5 1/5 90 005 --------------- Bに型番のみのデータがあります。 --------------- 型番 商品 価格 受注 出荷 仕入 No AAA BBB BBB CCC AAA AAA AAA CCC BBB BBB BBB --------------- Aから抽出したデータをBに反映させたいです。 以下のような形です。 --------------- 型番 商品 価格 受注 出荷 仕入 No AAA りんご 100 1/1 1/1 80 001 BBB みかん 200 1/1 1/1 90 003 BBB みかん 210 1/5 1/5 90 004 CCC ぶどう AAA りんご 120 1/3 1/3 80 002 AAA りんご AAA りんご CCC ぶどう BBB みかん 220 1/5 1/5 90 005 BBB みかん BBB みかん --------------- 宜しくお願い致します。

  • 一覧表よりデータ条件抽出

    教えてください。 下記データ表があります。    A     B      C 1  12/1  AAA  94.1% 2  12/2  BBB  95.6% 3  12/2  BBB  (空白) 4  12/3  CCC  97.3% 5  12/4  DDD  98.4% 6  12/5  EEE  97.3% ・したいこと条件説明 12/2~12/4のデータのみを抽出 %の(空白)セル(行)は抽出しない 日付(A列)は表示しない ・表示結果    A    B 1  BBB  95.6% 2  CCC  97.3% 3  DDD  98.4% としたいのですが・・・ いろいろ試してみましたが、うまくいきません。 よろしく、ご教授のほどお願いします。

  • 【エクセル】 関数を使って他のエクセルの値を読み込みたい

    エクセルで外部ファイルの値を読み込みたいのですが、その際に読み込み先(シート)を関数を使って切り替えたいので、アドバイスをいただけないでしょうか。 検索で調べてみたらVBAを使う回答が多いのですが、VBAを使える人が周りにいない(私もそうです)ので、後々のメンテナンスを考えると関数を使って切り替えたいのです。 【環境】 WINDOWS XP エクセル2000 C:\AAA (CドライブにAAAというフォルダ) フォルダAAAには、BBBとCCCというエクセルファイルがあります CCCには、シート名1、2、3という3つのシートがあります。 【目標】 ファイルBBBのセルの値を操作すれば、読み込み先が変更されてBBBで表示される値が切り替わる。 【だめだった例】 BBBのセルA1にシート名を入れます。「1~3の数値」 同じくセルB1にパスを表示させます「="'C:\AAA\[CCC.xls]1"&A1&"'"」 ・・・後ろのA1が変化することで読み込み先が変わるはず。 同じくセルC1にCCCから読み込んだ値を表示させます。 「=INDIRECT($B$1&"!"&ADDRESS(ROW(F7),COLUMN(F7)))」  ・・・B1で表示された読み込み先のセルF7の値を表示するはず。 結果は「#REF!」になります。 CCCを同時に起動させると上手く読み込むので、リンクの問題なのでしょうか? なお関数を使わないでパスを記述したセルでは、CCCを起動させなくても上手く読み込んでくれます。 よろしくお願いします。 

  • エクセルVBAでの文字列抽出

    エクセルVBAで文字列を検索して、検索した文字列を他のセルへ出力する方法がわかる方法を探しております。状況を図で説明すると、 A1セル:aaa\bbb\item1\ddd A2セル:aaa\bbb\ccc\item2\ddd A3セル:aaa\bbb\ccc\ddd\item3\eee このような状態からitemを検索して、B1セルに B1セル:item1 B2セル:item2 B3セル:item3 と表示させたいです。エクセルVBA初心者な者でRegExpを使うのかな、というところまではたどり着きましたが、そこから先にすすめません。 何か良い方法をご存知の方、教えていただきたいです。よろしくお願いいたします。

  • エクセルVBAでの文字列抽出とセルへの出力

    エクセルVBAで文字列を検索して、検索した文字列を他のセルへ出力する方法を探しております。状況を図で説明すると、 A1セル:aaa\bbb\item1\ddd A2セル:aaa\bbb\ccc\item2\ddd A3セル:aaa\bbb\ccc\ddd\item3\eee このような状態からitemを検索して、B1セルに B1セル:item1 B2セル:item2 B3セル:item3 と表示させたいです。エクセルVBA初心者なものでRegExpを使うのかな、というところまではたどり着きましたが、そこから先にすすめません。 何か良い方法をご存知の方、教えていただきたいです。よろしくお願いいたします。

  • 検索&抽出について

    下記のような組み合わせのセルで検索と抽出をして別シートに並び替える 作業をしたいと思っています。 【内容】 0001 ABC001 AAA001 0002 ABC002 BBB001 0003 ABC003 CCC001 これらがランダムに配置されていて、「ABC」を検索基準にして 別シートに ABC001 0001 AAA001 ABC002 0002 BBB001 ABC003 0003 CCC001 という具合で抽出して並べかえたいと思っています。 どなたか教えていただけないでしょうか?

  • EXCELで複数行の検索

    初心者です。 Aファイルのaaa、bbbなどをキーに Bファイルを検索してできるだけ簡単にマクロ等使わずに 下記のような抽出をする方法があれば教えてください。 よろしくお願いします。 Aファイル aaa bbb ccc Bファイル(例えば「ddd」と「あ」は別セルです) ddd あ eee い aaa う fff え bbb お ggg か ccc き 結果 Aファイル aaa う bbb お ccc き

  • 抽出して並べ替えたい

    初めまして 非常に悩んでいます。 エクセルシートの列に下記のようにデータが並んでいます。(文字列) AAA bbb ccc (空白) BBB ddd eee (空白) AAA bbb ccc (空白) AAA eee ggg 並べ替え後 AAA AAA BBB bbb eee ddd ccc ggg eee 尚、列上でセル位置は任意で、空白行も任意です。(1つ以上です) できれば関数でお願いします。 VBAの場合、使用したことがないので詳しくお願いします。

  • 複数セルを結合して一つのセルにしたい

    エクセル関数の質問です。 A列のセルに、数字が並んでいます。 aaaという部分はカテゴリーを示すものです。 B列のセルに同じカテゴリーの別の数値を連結させ、スペースで区切ってひとつのセルに表記させるにはどうすればいいでしょうか? concatenate関数を組み合わせて式を作ろうとしたのですが、うまく出来ませんでした。 VBAやマクロ、ユーザー定義関数になっても構いません。 ご教授ください。 A       B aaa_0001  aaa_0002 aaa_0003 aaa_0002  aaa_0001 aaa_0003 aaa_0003  aaa_0001 aaa_0002 bbb_0012  bbb_0013 bbb_0013  bbb_0012 ccc_0017

専門家に質問してみよう