BookAのデータを元にBookBに文字列を抽出する方法

このQ&Aのポイント
  • BookAのデータを利用してBookBから文字列を抽出する方法について解説します。
  • BookAには特定のデータがあり、それをBookBから抽出したい場合、ドロップダウンリストを使用して抽出できます。
  • 具体的には、BookAの特定のセルに選択した値に応じて、BookBの別のセルから文字列を抽出することが可能です。
回答を見る
  • ベストアンサー

BookAのデータを元にBookBに文字列を抽出する。

BookAのデータを元にBookBに文字列を抽出する。 BookAに下記のデータがあります ブック名="データA" シート名="名称"としてあります。 A B C D 1 A社   B社 2 りんご 青森 りんご 青森 3 みかん 愛媛  ぶどう 栃木 4 ぶどう 山梨  すいか 茨城 上記データを元に下記BookBに抽出する ブック名="マスターA" シート名="メイン"としてあります。   A   B   C 1 A社 みかん 愛媛 上記A1,B2に入力規制のドロップダウンリストから、A1="A社"、B1="みかん" を選択した時に (ここまではINDIRECTを使って出来ました。) C1に"愛媛"を抽出するにはどうしたらよいのでしょうか? A1にB社を選んだ時には、B1では "りんご"、"ぶどう"、"すいか" が選択できるので C1にはそれぞれ "青森"、"栃木"、"茨城" を抽出したいのですが。 よろしくお願いします。

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

  • ベストアンサー
noname#192382
noname#192382
回答No.1

次のマクロをコピーして実行してみてください。シート1のデータを並べ替えたものがシート2に作成されます。これでよろしいのでしょうか。 Sub Macro2() ' ' Macro2 Macro ' マクロ記録日 : 2010/10/24 ユーザー名 : ' ' Dim mygyo As Integer, myco As String, myendgyo As Integer, myarray1 As String, myarray2 As String, myretu As Integer Dim mystartgyo As Integer, newgyo As Integer Sheets("Sheet1").Select myco = Cells(1, 2) myendgyo = Cells(1, 4) Sheets("Sheet2").Select For mygyo = 2 To myendgyo '社名 Cells(mygyo, 1) = myco Next For mygyo = 2 To myendgyo 'その他 Sheets("Sheet1").Select myarray1 = Cells(mygyo, 2) myarray2 = Cells(mygyo, 3) Sheets("Sheet2").Select Cells(mygyo, 2) = myarray1 Cells(mygyo, 3) = myarray2 Next Sheets("Sheet1").Select myco = Cells(1, 3) mystartgyo = Cells(1, 4) + 1 myendgyo = Cells(1, 4) + Cells(1, 5) - 1 Sheets("Sheet2").Select For mygyo = mystartgyo To myendgyo '社名 Cells(mygyo, 1) = myco Next MsgBox (myendgyo) For mygyo = 2 To myendgyo 'その他 Sheets("Sheet1").Select newgyo = Cells(1, 5) - Cells(1, 4) + mygyo + Cells(1, 5) - 1 myarray1 = Cells(mygyo, 4) myarray2 = Cells(mygyo, 5) Sheets("Sheet2").Select Cells(newgyo, 2) = myarray1 Cells(newgyo, 3) = myarray2 Next End Sub

kamar3
質問者

お礼

ご回答いただきありがとうございます。 とりあえず、これでやってみます。 また何かありましたらよろしくお願いします。

その他の回答 (1)

noname#192382
noname#192382
回答No.2

No1ですが、大事なことを忘れていました。A社B社各会社のデータ行の最終行の数字(ここでは4,4)をD1,E1に入力しておいてください。

関連する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   ご教示のほどお願いします。

  • 月を指定してデータを抽出する

    下記のようなデータから(テーブル)     A     B      C      D 1  年月日  会社名  商品名   金額 2 10月27日  A社   リンゴ    5000 3 10月29日  B社   みかん   8000  4 11月1日   A社   バナナ   1000 5 11月2日   C社   みかん   4000 6 11月3日   B社   ぶどう   10000 下記のような別シートの見出しのB1セルを参照して。フィルタオプションで11月のデータだけを下記のA6:D9セルのように抽出するには抽出条件のA4セルにどのような関数を入れたらよいのでしょうか?     A      B    C      D 1 平成22年  11月  売上表 2 3 年月日 4  5 6 年月日   会社名  商品名   金額 7 11月1日   A社   バナナ   1000 8 11月2日   C社   みかん   4000 9 11月3日   B社   ぶどう   10000 A4セルに条件を入れなくても抽出できる方法でも結構です。 エクセルは2010です。 教えていただける方がおりましたらよろしくお願いします。

  • Excelでの文字列とりだしについて

    Excel(version2013)について質問です。 ある文字列を検索範囲内で検索し、みつかった場合、 その文字列を返すようにしたいです、どのような関数を使えば宜しいでしょうか。 例えば下記A列に検索したいリスト(りんご、ばなな、ぶどう)があり、 検索したい範囲がD1~E5とします。 その場合、B列に関数を使った式を入れ、 りんご、ばなな、空文字、りんご、ぶどうと並ぶようにしたいです。 どのような関数を使えば宜しいでしょうか。       A         B      C      D        E 1  りんご   (式)        りんご  みかん 2  ばなな  (式)        ばなな すいか 3  ぶどう   (式)        すいか みかん 4              (式)        りんご  すいか      5              (式)        ぶどう  みかん                                      

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

    項目が同じ(1)テーブルと(2)テーブルと(3)の産地データをリレーションシップでつなぎデータ■クエリ_結果2のように抽出したいのですが■クエリ_結果2のちょうに重複するデータしか抽出できません。 どうしたら結果1のように全ての商品を抽出できるでしょうか? アクセス初心者です。よろしいくお願いします (1)テーブル【中央11月データ】 バナナ 50 りんご 10 ミカン 100 (2)テーブル【関西11月データ】 バナナ 30 梨 60 (3)産地データ バナナ フィリピン りんご 青森 みかん 愛媛 梨 千葉 ■クエリ_結果1 バナナ フィリピン 80 りんご 青森 10 みかん 愛媛 100 梨 千葉 60 ■クエリ_結果2 バナナ フィリピン 80

  • Excelで複数条件で抽出した複数データを出力

    Excelで複数条件で抽出した複数データを出力したい Shett1のセルAとセルBの複数条件で、Sheet2を検索し一致したSheet2のセルCを Sheet1の該当するセルCに入れたいのです。 それを関数でするのはどうしたらいいのでしょうか? Sheet1 A B NAME ID(タイトル) いちご A01 いちじく A02 かき B01 すいか C01 なし D01 ぱいなっぷる E01 ばなな E02 ぶどう F01 みかん G01 めろん H01 もも I01 りんご J01 Sheet2 A B C 名前 ID 漢字(タイトル) みかん G01 蜜柑 いちご A01 苺 ぶどう F01 葡萄 りんご J01 林檎 もも I01 桃 かき B01 柿 なし D01 梨 すいか C01 西瓜 いちじく A02 無花果

  • エクセル関数で、2列の情報を1列に順番に並べたい

    以下の元データのようにA~D列にある情報を、 下方のE列、F列にあるように情報を合わせて表示したい場合、 E列、F列にはどのような関数を入れたらよいでしょうか。 COUNTIFやVLOOKUP関数を試してみましたが、 うまく順番に並べることができず途方に暮れています。。。 どなたかお知恵がある方、マクロではなく関数で 教えていただけたらありがたいです。 ※A列はB列の情報番号、C列はD列の情報番号です。 ↓元データ↓ A  B    C   D 1 みかん  1 あ 1 みかん  2 い 1 みかん  3 う 2 りんご   4 え 2 りんご   5 お 3 すいか  6 か 3 すいか  7 き 3 すいか  8 く 3 すいか  9 け ↓このようにしたいです。↓ A  B    C  D   E  F 1 みかん  1  あ    1  みかん 1 みかん  2  い    1  あ 1 みかん  3  う    2  い 2 りんご   4  え    3  う 2 りんご   5  お    2  りんご 3 すいか  6  か    4  え 3 すいか  7  き    5  お 3 すいか  8  く     3  すいか 3 すいか  9  け    6  か                 7  き                 8  く                  9  け 何とぞよろしくお願いします。

  • 文字列だけを抽出してリスト表示したい

    エクセルでですが、教えてください! ある範囲内にある多数のデータの中から文字列のものだけを抽出しリストとして表示したいのですが、どのような関数を使えば実現できるでしょうか?   A    B 1 66   林檎 2 88    99 3 蜜柑   88 4 22    駅 というようなデータがある時、文字列だけを抽出、 林檎 蜜柑 駅 というように抽出し、リスト化したいのですが、わかる方よろしくお願いします!

  • ある文字について、異なった列の特定行への一括置換

    以下の表があったとします。置換前の表中の×を各列の最後の文字に置き換えたいです。たとえば、A4の×は野菜、B2とB4の×は肉、など。実際には膨大なデータがありますので、一括で処理する方法をご教示いただけますと幸いです。よろしくお願いいたします。 【置換前の表】   A    B    C    D 1 りんご みかん ぶどう なし 2 みかん ×   ×    みかん 3 みかん ぶどう ×    × 4 ×    ×   ×    × 5 ぶどう なし   りんご  りんご 6 ぶどう みかん なし   なし 7 野菜   肉   穀物   魚 【置換後の表】   A    B     C    D 1 りんご みかん ぶどう なし 2 みかん 肉   穀物   みかん 3 みかん ぶどう 穀物   魚 4 野菜  肉    穀物   魚 5 ぶどう なし   りんご  りんご 6 ぶどう みかん なし   なし 7 野菜  肉    穀物   魚

  • 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 みかん --------------- 宜しくお願い致します。

  • エクセルで重複データの編集

    次のようなデータがあります。     商品名 | 産地 | 店名 | 1行  みかん   静岡   あ 2行  りんご   青森   い 3行  みかん   愛媛   う 4行  みかん   静岡   え 5行  りんご   長野   お 6行  みかん   愛媛   か            実際には列の項目はもっとあります。 行も3万件ほどあります。 これを「商品名」「産地」などの重複する行を 一つにまとめ「店名」のみを結合した表を作成したいです。     商品名 | 産地 | 店名 | 1行  みかん   静岡   あ・え 2行  りんご   青森   い 3行  みかん   愛媛   う・か 4行  りんご   長野   お 重複データの抽出・削除だけでなく、一部分を 結合させて表示させる方法がわかりません。 よろしくお願いします。

専門家に質問してみよう