エクセルで品目に対してシートの検索と書き出しを効率化する方法

このQ&Aのポイント
  • エクセル2010を使用して、品目リストから特定の品目がどのシートにあるか検索し、結果をセルに記録したいです。
  • 数百種類の品目に対して手動で検索するのは非効率的なため、マクロを使って省力化する方法を教えてください。
  • 検索結果を一気に書き出し、重複している品目を明確に表示することが目標です。
回答を見る
  • ベストアンサー

エクセル 品目に対してシートの検索と書き出し

エクセル2010です。 ある品目リストがあり、そこに別のいくつかのリスト(同じブック内のシート)から、品目が同じものがどのシートにあるか、というのを検索してそれぞれのセルに記録したいのです。 何の品目がどのシートに載っているかというリストの作成です。 例えば、メインの品目リストが  ごぼう  にんじん  はくさい  トマト  ほうれんそう  いちご というリストがあったとして、別のシートに、 (シートA)   (シートB)   (シートC) かぼちゃ    だいこん    ブロッコリー はくさい    きゅうり     カリフラワー にんじん    はくさい     すいか たまねぎ    なす      にんじん りんご      すいか     たまねぎ みかん     ピーマン    いちご となっているとします。 これに検索をかけ、メインの品目リストに別リストと重複している品目について、  ごぼう  にんじん シートA,シートC  はくさい シートA,シートB  トマト  ほうれんそう  いちご シートC という結果を書き出したいのです。 これを、メイン品目リストの全品目について、一気に検索と書き出しができないものでしょうか。 エクセルでこんなことができるのかどうかわかりませんが、なにせ品目は数百種類あるので、ひとつひとつ手動で検索して調べてるといつになるかわかりません。 マクロを使うやり方でも、一気にできなくてもできるだけ省力化できる方法などあれば、ぜひともご教授ください。 よろしくお願いします。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんにちは! VBAでの一例です。 メインの品目が表示してあるSheetはSheet見出し上の一番左側に配置してあり、 Sheet2以降が別Sheetだとします。 尚、メイン品目はA列の1行目から表示してあるとします。 Alt+F11キー → 画面左側の「This Workbook」をダブルクリック → VBE画面に ↓のコードをコピー&ペーストしてマクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です) Sub Sample1() 'この行から Dim i As Long, j As Long, k As Long, c As Range, wS As Worksheet Set wS = Worksheets(1) j = wS.UsedRange.Columns.Count If j > 1 Then Range(wS.Columns(2), wS.Columns(j)).ClearContents End If For i = 1 To wS.Cells(Rows.Count, 1).End(xlUp).Row '←1行目~最終行まで For k = 2 To Worksheets.Count '←2番目のSheet~最終Sheetまで Set c = Worksheets(k).Cells.Find(what:=wS.Cells(i, 1), LookIn:=xlValues, lookat:=xlWhole) If Not c Is Nothing Then wS.Cells(i, Columns.Count).End(xlToLeft).Offset(, 1) = Worksheets(k).Name End If Next k Next i End Sub 'この行まで こんな感じではどうでしょうか?m(_ _)m

markey08
質問者

お礼

こんなマクロがすぐに作れるなんて、すごいですね! 業務のリスト作成に合うように、各部を代入して試してみたいと思います。 なんだか、到底無理だと思っていたことが、けっこうできるものだというのが分かり、胸をなでおろしています。(笑) 3日ほど徹夜になるかと思ってましたから・・・ ありがとうございました。

その他の回答 (1)

  • shintaro-2
  • ベストアンサー率36% (2266/6244)
回答No.1

例えば、 品物リストがシートAのA列 シートB以降に参照すべきリストがあるとすると シートAのB列以降に match関数でシートB以降の各シートのリストを参照するようにすれば可能です。

参考URL:
http://pc.nikkeibp.co.jp/pc21/tech/excel36/26/
markey08
質問者

お礼

関数でもできるのですね。 MATCH関数は使ったことがないのですが、リンク先を参照して試してみます。 ありがとうございました。

関連するQ&A

  • excelでシートから別シートに抽出する方法

    データシートに A   B    C 佐藤 りんご  25個 木村 オレンジ 3個 伊藤 メロン  12個 伊藤 スイカ  2個 佐藤 イチゴ  40個 佐藤 マンゴー 8個 というデータがあったとします。 それを別のシートに A   B    C 佐藤 りんご  25個    イチゴ  40個    マンゴー 8個 また別のシートに A   B    C 伊藤 メロン  12個    スイカ  2個 といったようにAに佐藤とか伊藤とか入力するだけでB、Cが自動で抽出できるようにできますか? 出来れば関数の入力でやりたいのですがわかる人がいましたらご教授ください。

  • エクセルのマクロで検索機能を使いたいのですが

    お尋ねします。 エクセルのブックにsheet1とsheet2のシートがあります。 sheet1には、A1列料理名、B1列野菜、C1列和洋中の項目が入っており、値は、2行目から入っています。 sheet1のB列には、複数の野菜が入っている場合もあります。 sheet2には、A1列番号、B1列野菜(1種類しか入っていません)の項目があります。 sheet2の1行目は項目名で、2行目からA2が1、B2がナスというように B2列は、十数行あり、sheet2のB行の野菜を選択し、sheet1のB列を検索し、ヒットすれば、D2にヒットした野菜を記入します。 それを繰り返し、sheet2の野菜名を選択し、sheet1の料理名に該当の野菜が含まれるかを記載したいのですが、マクロの記述をどのようにすればいいでしょうか? よろしくお願いします。 sheet1  A        B      C    D    E ハンバーグ  タマネギ      洋   タマネギ 卵焼き              和   ギョウザ   白菜、にんにく   中   白菜   にんにく sheet2 A B 1 ナス 2 タマネギ 3 白菜 4 にんにく 5 キャベツ 6 人参 sheet1のD列から入っている野菜をD列、E列、F列とそれぞれ 野菜名を入れていきます。 すみませんが、お助けください。

  • 冷蔵庫から出してそのままつまめる野菜メインのおかず

    こんにちは。 私は普段3食ちゃんと食事をとりますが、間食もたくさんします。 間食はほとんどお菓子です。 幸い体質的に太る事はないのですが、少し健康面で不安が出てきたので、 普段のお弁当用に作り置きしているおかずを多めに作って、 それをお菓子の替わりに食べるようにしました。 ただ、ちょっと飽きてきたのですが、なにを作ろうかなかなか思い浮かびません。 もし何か良い物がありましたら教えていただけないでしょうか? イメージとしては、野菜メインのおかずで、 冷蔵庫にお皿やタッパーで入れておいて、ぱっと出してそのまま冷たいままつまめて、 あまり傷まない(4~5日持つ)感じの物です。 よく買う野菜を書いておきますので、できればこれを使ったものでお願いします。 調味料等は結構揃っています。作るのに手間がかかるものでも大丈夫です。 よろしくお願いします。 トマト、レタス、キャベツ、玉ねぎ、にんじん、じゃがいも、白ネギ、 もやし、ナス、アスパラ、ほうれん草、大根、れんこん、ごぼう、ピーマン、 かぼちゃ、きゅうり、セロリ、白菜、さつまいも

  • 新○○○はどこが違うんですか?

    昔から「新じゃが」というのはありましたが、近年、 新タマネギ、新にんじん、新にんにく、新トマト、新ごぼう..... と、やたら新○○○という野菜が目立ちます。どんな根拠で”新”がつけられているのですか?

  • 新鮮な食材の見分け方(スーパーにて)

    自炊を始めてまだ間もないのですが、スーパーで野菜を買う時、どういうのを買えばいいかなぁといつも悩んでしまいます。キャベツは持ってみて重たいのを買えばいいんですよね~?この前何気なくトマトを買って帰って切ってみたら中が傷んでて凄くへこみました(T_T) あと鶏のムネ肉を買う時トレイに水(汁?)が出ているものと出ていないものがあったんですが、これはやっぱり水が出ていない方がいいんでしょうか?  肉でも野菜でも果物でもこういうのを選ぶとおいしいよ、というアドバイス色々いただきたいです! 私がよく買っているのはジャガイモ、玉葱、人参、キャベツ、ほうれん草、葱、小松菜、椎茸、白菜、ピーマン、もやし、トマト、きゅうり、かぼちゃ、ごぼう、リンゴ、バナナ…(並べるときりがない)などで、肉は牛・豚が切り落とし、鶏はムネ肉とささみ、ミンチはどれも買います。 これらが特に知りたいのですが、他に何でも知りたいので、ご存知の選び方があったらたくさん教えて下さいm(_ _)m 経験豊かな方のご指導お待ちしてます。よろしくお願いします!!

  • 野菜のおいしい時期と安い時期?

    この間までナスは安かったように思うのですが、このところ秋茄子になったためか少し高いように思います。 野菜ってたいがいは1年中あるので、あまり気にしていなかったのですが、やはりおいしい時期と安い時期があるように思うのですがどうなのでしょうか? 下記のものをよく使うのですが。 ジャガイモ、タマネギ、ナス、キャベツ、レタス、ネギ、ナス、ピーマン、白菜、ニンジン、サトイモ。ブロッコリー、ほうれん草、アスパラ、オクラ、キュウリ、しいたけ、にんにく、ミョウガ、ごぼう。

  • 料理のいれる順番

    料理を炒める順番の時 次に玉ねぎ、ゴボウ、大根、人参、コンニャク、モツの順に炒める。水を入れて中弱火で煮 とありました。 この順にというのはどういうことでしょう? 玉ねぎ30秒炒めたあとごぼうをいれてまた30、次に人参を・・と ある程度その素材だけを炒めて次のをいれるのか 玉ねぎをぜんぶフライパンにいれたらごぼうをすぐいれるのかどっちなのでしょうか? すぐだと順番に入れる意味がまったくないようなきもしますが・・(すぐかきまぜますし・・) あと野菜を火にかける順番のリストみたいのはないのでしょうか? どのあとにどれをいれればだいたい同じくらいやわらかくなるリストがあれば べんりだとおもいます

  • エクセル関数【指定条件で繰り返し】

    色々検索やら、考えてみたのですが、解決できずで質問させていただきました。 エクセル2003なのですが、やりたい内容としては    A    B     1    1     りんご 2    1     みかん 3    2    すいか 4    1    なし 5    3    いちご ・・・ ・・・ ・・・ という内容を、別シートに関数でA1から    A   1    りんご 2    みかん 3    すいか 4    すいか 5    なし 6    いちご 7    いちご 8    いちご ・・・ ・・・ ・・・ という形でできればと思っているのですが。 どなたか教えてくださると助かります!! やはり固定の数字でないと中々難しいでしょうか?ひねっても全然頭にでてきません。。。

  • 足りない栄養素は?

    主人は野菜全般が苦手です。 結婚前は野菜といえば、ジャガイモ、レンズ豆、ひよこ豆ぐらいしか食べていなかったようです。 ニンジン、ネギは細かく刻んで混ぜ込めば食べてくれるようになりましたが、 他の野菜(特に緑色で見た目にすぐ分かるもの)は抵抗があるようで味見程度にしか食べません。 ニンジンとネギでは不足しがちな栄養素、また、それを補える野菜やレシピを教えて頂けませんか? 今更、野菜好きになってもらおうとは思っていませんので、ごまかして食べてもらえれば満足です。 玉ねぎは精神的に受け付けないらしく、どんなに細かくしても食べられませんので、 ポタージュにする時だけ使っています。肉、魚の好き嫌いは特にありません。 うちでよく買う野菜は下記の通りです。   食べられるもの:きのこ類、じゃがいも、レンズ豆、ひよこ豆   ごまかせば食べられもの:ズッキーニ、玉ねぎ、セロリ、ナス、ニンジン、ネギ   少量しか食べないもの:レタス、トマト、きゅうり   何かと混ぜても抵抗があるもの:ブロッコリー、ほうれん草、グリンピース、キドニービーンズ、パプリカ 大根、おくら、レンコン、ごぼう、キャベツ、白菜、小松菜、もやしなどは手に入りません。 宜しくお願いします。

  • エクセルの合計金額が知りたいです・・・。

    全くの初心者です。 商品の売り上げを、エクセルで打ち込んでます。 例えば、 4月分とし、シートは4つあります。 5月分とし、シートは4つあります。 それぞれ、ショートカット作成しております。 詳細は、 4月1日~10日まで・・・が1シート・・・のように、10日間ずつ打ち込んでます。 これを、「商品別」での、売り上げ(なにが一番売れてるのか)を知りたいのです。 まずは、各シートを、1つにまとめるんですよね?(違ったらすいません) 売り上げた、全商品が1シートにまとめます。 4月1日  タマネギ   100円 4月1日  にんじん   100円 4月2日  キャベツ   150円 4月3日  タマネギ   100円 4月3日  総菜    298円 4月4日  レタス     150円 4月4日  にんじん    100円 4月6日  タマネギ    200円 4月9日  白菜    120円 4月10日  ラーメン  380円 4月10日  にんじん  300円 4月11日  総菜   198円 ・ ・ ・ ・ ・ このように、打ち込んでます。 これを、商品別に並べたり、集計(販売合計)を、作成するためには、どうすればいいのでしょうか・・・。 初心者ですいません・・・。 アドバイスあれば、よろしくお願いします。 office 2013です。

専門家に質問してみよう