• ベストアンサー

エクセルの抽出について。

  A列       B列      1 商品名      使用薬剤 2 風呂用洗剤    トリクロサン、界面活性剤、パラベン 3 ハンドソープ   界面活性剤、メチルパラベン 4 台所用洗剤    パラベン、メチルパラベン、界面活性剤 5 洗濯用洗剤    メチルパラベン、トリクロサン エクセルでこのようなデータベースが約4000件あります。 商品に使われている薬剤をB列の使用薬剤という項目に しかもひとつのセルに薬剤名が入力されている状態です。 ここがネックになっていると思うのですが・・・。 例えば、抽出したいのが「パラベン」なのですが オートフィルタで「パラベンを含む」にすると 「メチルパラベン」は使用しているが、「パラベン」は使用していない 3のハンドソープと5の洗濯用洗剤も一緒に引っ掛かってくるのです。 抽出したいのは、2の風呂用洗剤と4の台所用洗剤なんですよね。 データベースの扱いにはまだ慣れておらず 職場にも分かる人がいません。 本当に困っています。 どのような操作をすれば正しく抽出できるでしょうか? オートフィルタでは無理なような気がします。 フィルタオプションの設定ではできますか? 毎日、悶々と考えていますが答えは見つかりません・・・。 よろしくお願い致します。

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

  • ベストアンサー
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.1

提示のサンプルをそのままA1:B5にコピペして試してます。 D1からF1まで抽出条件にしたい同じタイトル 使用薬剤 と入れて、 D2を *、パラベン E3を *、パラベン、* F4を パラベン、* として、フィルタオプションの検索条件範囲を「$D$1:$F$4」で出ましたけど、、、

kitten_1979
質問者

お礼

早速のご回答、ありがとうございます。 papayukaさんのとおり、フィルタオプションでやってみました。 できました!!あがとうございました。 私、まだエクセルでのデータベースの扱いが出来なくて・・・。 また質問になってしまうのですが 検索条件範囲の D2を *、パラベン E3を *、パラベン、* F4を パラベン、* D2、E3、F4と1行づつ下がるんですね。 この1行づつ下げて検索条件を入力するということが大切なんでしょうか? 試しに同じ行に検索条件を入力したらダメでした。 何も引っかかってきませんでした。 よろしければ教えて頂けないでしょうか? 勉強不足で本当に申し訳ないです。 よろしくお願い致します。

その他の回答 (4)

  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.5

#1です。 このケースで複数列にする必要はなかったのに、変な書き方したましたので混乱させちゃったかな? 単純に D1:D4に 使用薬剤 *、パラベン *、パラベン、* パラベン、* で良かったので。 ちなみに同じ行にしたら And 検索です。

kitten_1979
質問者

お礼

いえいえ、こちらこそ勉強不足なので・・・。 申し訳ないです。 D1:D4で抽出条件を入力してやってみました。 最初に教えて頂いた複数列に入力するのと 同じ結果になりました。 なるほど! 同じ行にするとD1:F1にすると And検索になるんですね。わかりました。 質問にお答え頂き、本当にありがとうございました!

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

こういうことでよいのかな。 パラペンというつづりをaとします。 合成語のメチルパラペンはbaとなります。bはメチルというつづりの言葉です。 パラペンハイドレートというのがあればacです。 いちいちカナで薬剤名を書くのが面倒なので 上記で略します。 A1にaを入れます。(パラペン) A2:A6に a,b ac,b,a ac,b s,s,da a,m,am と入った形です。質問ではB列に当たります。 A列をB列に複写します。 ここで、B2:B6を範囲指定して、データ-区切り位置-カンマ・・・-次へ-カンマにV-完了で B2:D6に a b ac b a ac b s s da a m am のように各セルに分かれます。 E2に =IF(COUNTIF(A2:C2,$A$1)>0,MAX($E$1:E1)+1) と入れてE6まで式を複写します。 結果はE2:E6に 1 2 FALSE FALSE 3 FALSEの行は前後に言葉のつかない「a」はない、 数字の行は、それがあり、上からの連番を示しています。 Sheet2に行き A1に =OFFSET(Sheet1!$A$1,MATCH(ROW(),Sheet1!$E$1:$E$6,0)-1,0) と入れてA3まで式を複写します。 3はSheet1のE列のMAX値です。 結果 a,c ac,b,a a,m,am これで「パラペン」という単独語だけの含まれている成分が抜き出せました。 商品名も列数をうまくやれば出せます。 A1を他の成分薬剤に変えるとSheet2は瞬時に 結果が変わります。 以上のほかにはしょった点がありますが、長くなるのでよろしく。

kitten_1979
質問者

お礼

imogasiさん、ご回答ありがとうございます。 なっ、何だかとっても難しい。です・・・(><;) 本当はimogasiさんのように、私がエクセルのことを分かればいいのですが。 >A1を他の成分薬剤に変えるとSheet2は瞬時に 結果が変わります。 こっ これは素晴らしいです!! うぅ~ できるようになりたいです。。。 とりあえず月曜からはフィルタオプションでの抽出で作業をし始め その合間にimogasiさんに教えて頂いた方法を頑張って 自力で(汗)試していきたいと思います。 本当にありがとうございました!

  • s_yoshi_6
  • ベストアンサー率73% (1113/1519)
回答No.3

#2です。訂正します。 >『「パラペン」で始まるもの』または『「、パラペン」を含むもの』 は 『「パラペン」で始まるもの』または『「、パラペン、」を含むもの』または『「、パラペン」で終わるもの』としなければなりませんでした。 ということで抽出条件も、#1さんのものが正しい抽出条件になりますので、そちらをお使いになってください。

kitten_1979
質問者

お礼

s_yoshi_6さん、ご丁寧にありがとうございます。 どのように抽出条件を設定すればいいのかも分からずにいましたが s_yoshi_6さんのように 『「パラベン」で始まるもの』または『「、パラベン、」を含むもの』または『「、パラベン」で終わるもの』 papayukaさんの *、パラベン *、パラベン、* パラベン、* こういう考え方がすぐに出来ないとダメなんですね。 私の頭の中にはオートフィルタの『~を含む』と『~を含まない』しかありませんでした・・・。 また、よく使う抽出条件をマクロに登録する方法や 抽出解除後の『全てを表示させるボタン』を作る方法も 教えて頂いて本当にありがとうございます! 毎回、▼ボタンで「全てを表示させる」をしていたのですが 面倒だな。と思っていたところでした。 s_yoshi_6さん、丁寧なご回答、本当に感謝しています。ありがとうございました。 これで悶々とした日々(笑)から開放されます。

  • s_yoshi_6
  • ベストアンサー率73% (1113/1519)
回答No.2

もしそれぞれの項目の区切りが「、」であると決まっているのならば、フィルタオプションを使って、その抽出条件を『「パラペン」で始まるもの』かつ『「、パラペン」を含むもの』とされると抽出できます。 具体的には、Sheet1にご質問の表があるとして、Sheet2を抽出条件を記入するためのシートとし、Sheet2のB1:B3に次のように入力されると良いかと思います。    B 1 使用薬剤 2 パラベン* 3 *、パラベン* 以下の手順については下記ページを参考にして下さい。 http://www.atmarkit.co.jp/fwin2k/win2ktips/411excelfilter/excelfilter.html なお、抽出のたびにいちいち条件を設定するのは面倒だと思いますので、あらかじめ使用薬剤の種類の数だけSheet2のB列に条件を入力しておいて、抽出の手順をマクロに登録されておくと楽かもしれません。(薬剤の種類が多いと大変ですので、とりあえずよく使うものだけでも) 例えば、Sheet2を下記のようにします。(ここでは、他のものまで抽出される可能性のないものも、一応2つの条件を設定しています)    B 1 使用薬剤 2 パラベン* 3 *、パラベン* 4 使用薬剤 5 メチルパラベン* 6 *、メチルパラベン* 7 使用薬剤 8 トリクロサン* 9 *、トリクロサン* そして、[ツール] → [マクロ] →[新しいマクロの記録] で[マクロ名] を「パラペン」として記録を開始します。一番最初で書いた手順で「パラペン」を含む行の抽出が終わったら記録終了の■ボタンをクリックして終了します。 あとは、[データ] → [フィルタ] →[すべて表示] で元に戻した後、「メチルパラペン」「トリクロサン」についても同様に登録します。 以上の準備をすると、Alt+F8で登録されているマクロの一覧を開いて、適当な薬剤名を選択だけで、それを含むものが抽出されると思います。 なお、マクロをボタン登録すれば、さらに手順は簡略になりますが、そこまでやる必要があるかどうかは判断がつきませんので、ここでは割愛します。 ただ、抽出を解除して全てを表示させるボタンをツールバーかワークシート上に1つ作っておくと、データベースの使い勝手が良くなると思いますよ。一応手順のページを載せておきます。 ツールバー上に作る http://www.nurs.or.jp/~ppoy/access/excel/xlET008.html ワークシート上に作る http://homepage1.nifty.com/tabotabo/insat/excelp/excelp09.htm

参考URL:
http://www.atmarkit.co.jp/fwin2k/win2ktips/411excelfilter/excelfilter.html

関連するQ&A

  • パラベンのタンパク質不活性

    メチルパラベン、エチルパラベンなどは、化粧品の防腐剤に使用される代表的な薬剤ですが、非イオン界面活性剤やタンパク質で不活性化するという特徴を聞いたことがあります。つまり、これはタンパク質とパラベンが共存すればするほどパラベンの効果は落ちていく、ということですよね。そのメカニズムってどういうものなのでしょうか?よろしくお願いします。

  • エクセルの横からのデータ抽出

    エクセルの データ → フィルター → オートフィルター を使用すると、行の一番先頭に▽マークが出てきて、列データの抽出をすることができますが、逆は可能なのでしょうか? すなわち、列の一番左部分に右横向き▽マークが出て、行のデータ抽出を行うということは、可能なのでしょうか?

  • エクセル抽出について

    初歩的な質問で大変恐縮です。 エクセルで10列×5行でひとまとまりの下に続く表があり、その中の1列目2行目に入力してある「支店」別にデータを抽出したいと思っています。オートフィルタを使うと1行づつなら抽出できるのですが、10列×5行のまとまりごと抽出する方法はありますでしょうか? つたない文章で申し訳ありませんが、ご教授ください。

  • 無添加のもの好きですか? 

    私は無添加のものが好きです。 添加物の入っているものや合成界面活性剤がおそろしく感じ使えなくなっています。 シャンプー、ボディーソープ、ハンドソープ、洗剤、食品も なるべく無添加のものを選ぶようにしています。 皆さんはどうですか? 無添加のものが好きな方はこれだけは手放せないというおすすめの物はありますか? 回答よろしくお願いいたします。

  • 合成界面活性剤や鉱物油など

    合成界面活性剤不使用で鉱物油や着色料、香料、パラベンなどの有害とされる化学物質がほとんど使われていないシャンプー・ボディーソープ・ヘアースタイリング剤を教えて下さい!!

  • Excel ●がついているセルのみ抽出したい

    A列  B列  C列 ●  りんご  3    みかん  5 ●  ぶどう  2    バナナ  5 ↓ ●  りんご  3 ●  ぶどう  2 上記のように●がついているセルの横(B、C列)を抽出する関数はありますか? オートフィルタ以外でおわかりになりましたら教えてください。 よろしくお願いいたします<(_ _)>

  • エクセル2003 データの抽出

    excel2003を使用しています。 A列に8桁のコード、B列に、そのコードの品名が入力された表があります。 この表の中から、最初の4桁だけ一致するデータを抽出したいのですが どうすればよいでしょうか? オートフィルタオプションを使ってみたのですが、うまくできません。 よろしくお願いいたします。 例:12348888、12349999、12346666、32224434、46732235・・・・と並ぶコードの中から、 1234×××× のコードの行だけが、表示されるようにしたい。

  • 界面活性剤について。

    界面活性剤について。 洗濯洗剤などに使われる、界面活性剤という成分について、詳しく教えて下さい。 洗濯用の液体洗剤を各社比較してみると、かなり成分が違う事に気が付きました。特に気になったのが、界面活性剤のパーセンテージの差です。 体に直接つけるボディソープなどは、界面活性剤が入っていない方が体に優しい、という風に聞いた事がありますが、洗濯洗剤の場合はどうなのでしょうか?また、界面活性剤が多いのと少ないのでのメリット、デメリットも教えて下さい。 知識が無くて申し訳ないのですが、そもそも界面活性剤の特徴って何でしょうか? 子供の肌が弱く、極力肌に良いものを、と考えています。 詳しい方がいましたら、是非教えて下さい。

  • 低刺激な洗濯洗剤を探しています

    肌が弱いので、合成界面活性剤を使用していない低刺激な洗濯洗剤を探しています。すでにハンドソープなどでミヨシ石鹸を使って良かったので、洗濯洗剤もミヨシにしようかと思っています。 ミヨシのHPを見たところ、「無添加 衣類のせっけん(液体)」か「そよ風(粉末)」が良さそうに感じました。 これらの洗剤を実際に使用されたことのある方、感想をお聞かせ下さい。また、液体のほうが洗剤の溶け残りがなくて良いのか、汚れ落ちはどうか、定期的に漂白剤を併用した方がよいのか、についても教えていただきたいです。

  • Excel オートフィルタのトップテンオートフィルタについておたずねします。

    Excelのオートフィルタを使用し、抽出を行います。その結果を対象に[トップテンオートフィルタ]を実行すると、先の抽出結果にではなく、データベース全体を対象にした結果が返されます。 ヘルプには、「1 つの列にフィルタを使用した場合、他の列のフィルタは、最初に抽出されたセル範囲内の表示されたセル (可視セル) の値に対してのみ適用できます。」とあります。 先の抽出結果を他の場所へ貼り付けるなどしてから、[トップテンオートフィルタ] を実行すれば、結果は得られますが、理由がわからないので、すっきりしません。 WindowsXP・Excel2002&2003で検証済みです。 よろしくお願いします!

専門家に質問してみよう