教えて! goo のコンテンツに対する取り組みについて

詳しい方、ご教示いただけますと幸いです。

データベースからダウンロードしたデータを、
希望の書式に最適化するエクセルファイルを作成しています。

シートが2枚あり、
「貼り付け元」シートに貼り付けたデータが、
もうひとつの「最適化」シートにアウトプットされる形です。
「貼り付け元」のデータは何もいじらず、「最適化」シートのみ関数を入れています。

色々と組み合わせていますが、SUBSTITUTEとIFの組み合わせが上手くいきません。

【条件】

1.「貼り付け元」シートのシングルクォーテーションを取る


2.シングルクォーテーションを取り除いた値の中に
「りんご」または「みかん」が含まれており、
かつ
最適化シートのB2のセルに「対象」の値が含まれている場合は、
「ぶどう」
を返す

3.2の条件に該当しない場合は、シングルクォーテーションを取り除いた
貼り付け元のシートの内容をそのまま返す


----------------------

1については、
=SUBSTITUTE(貼り付け元!A2,"'","")

これで解消できるのはわかります。

2については、
=IF(AND(B2="対象",A2="りんご",A2="みかん"),"ぶどう")

これで解消できるのかなと思います。

ですが、1と2を満たし、3も満たす方法がわかりません。
どのように組み合わせたらよいのでしょうか?

SUBSTITUTE、IF、AND以外の関数で解決するものなのか、
1つのセル内で処理する事がそのそも無理なのかもわかりませんでした…。


ご存知の方、お知恵をお貸しいただけますと助かります。
どうぞよろしくお願いいたします。

gooドクター

A 回答 (3件)

》 1.「貼り付け元」シートのシングルクォーテーションを取る


》 1については、
》 =SUBSTITUTE(貼り付け元!A2,"'","")
》 これで解消できるのはわかります。
「わかります」と仰っているけど、それは冗長な作業です。
なぜなら、単に =貼り付け元!A2 で「'」が取れているからです。確認してみてください。
    • good
    • 0

デーベースクエリでやればいいのにという突っ込みはなしなん


ですかね。

「含まれている」は「一致する」とは意味が違いますので 2の
数式はそのままではまずいでしょう。

=SUBSTITUTE(IF(AND(COUNTIF(B2,"*対象*"),OR(COUNTIF(貼り付け元!A2,{"*りんご*","*みかん*"}))),"ぶどう",貼り付け元!A2),"'","")
    • good
    • 0

ちょっと長くなりますが



=IF(AND(IFERROR(FIND("対象",B2),FALSE),OR(IFERROR(FIND("りんご",SUBSTITUTE(貼り付け元!A2,"'","")),FALSE),IFERROR(FIND("みかん",SUBSTITUTE(貼り付け元!A2,"'","")),FALSE))),"ぶどう",SUBSTITUTE(貼り付け元!A2,"'",""))

ではどうでしょうか。
作業用セルがつかえるなら、もっと短くなるかと。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング