• ベストアンサー

Excelについての質問です。A列からC列の文字を検索する方法を教えてください。

A列からC列の文字を検索してかつB列にその結果の表示をさせたいのですが、可能でしょうか? A列 B列 C列 A,1,,a × C-1 C,1,,b ○ B-2 B,1,,a × C,1,,a ○ A,1,,b × B,2,,b ○ こんな感じでC列の「-」はA列では「,」になってます。また、A列には「,,*」がくっついてます。 出来ればA列、C列共に置換やセルの分割などをせずに関数などを使いB列に○、×で表示させたいです。 よろしくお願いします。

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

  • ベストアンサー
  • 135ok
  • ベストアンサー率34% (26/75)
回答No.4

やはり、ちょっと気にかけてました。 X、Yが何文字になっても対応します。お試しあれ。 X,Y,,a =IF(A1="","",IF(COUNTIF($C:$C,LEFT(REPLACE(A1,FIND(",",A1),1,"-"),FIND(",,",A1)-1)),"○","×"))

fortune12
質問者

お礼

ありがとうございます!! 素晴らしいです!

その他の回答 (3)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

B1セルに次の式を入力して下方にオートフィルドラッグします。 =IF(A1="","",IF(COUNTIF(C:C,LEFT(SUBSTITUTE(A1,",","-",1),FIND(",",SUBSTITUTE(A1,",","-",1))-1))>0,"〇","×"))

  • yone_sk
  • ベストアンサー率34% (58/167)
回答No.2

こんな方法もありますね。  =IF(A1="","",IF(ISERROR(VLOOKUP(SUBSTITUTE(LEFT(A1,3),",","-"),C:C,1,FALSE)),"×","○")) 明らかに COUNTIF の方がキレイ・・・

  • 135ok
  • ベストアンサー率34% (26/75)
回答No.1

いかがでしょうか。 =IF(A1="","",IF(COUNTIF($C:$C,LEFT(REPLACE(A1,2,1,"-"),3)),"○","×"))

fortune12
質問者

お礼

ありがとうございます。 ……しかし……例に出した状況ならこれで大丈夫なのですが、A、B、CそれぞれにA=リンゴやらB=ミカンやら特定の文字が入る時はこのコマンドのドコをいじれば可能でしょうか? 無知ですいません……

関連するQ&A

  • A列の指定した位置にB,C列の文字を置換させる方法 2

    お世話になります。 昨日以下のような質問をさせていただきました。 *********** Excel2003で、A列の指定した位置にB,C列の文字を置換させる機能はありますか。 例 *にB列の文字を、¥にC列の文字を置換。 A   |B |C 1 (*)\(z)| あ| 2 2 (*)\(z)| 3 | 4     ↓ 1 (あ)2(z)|あ | 2 2 (3)4(z) | 3 | 4 ************ そして回答をいただき、そのうちの一つ「セルD1に数式で表示させるのなら =SUBSTITUTE(SUBSTITUTE(A1,"*",B1,1),"z",C1,1) 」を使わせていただきました。 この関数を用い、60行ほどある置換作業を短時間で終えることが出来喜んでいたのですが、その何時間か後に別ファイルで同じ作業を試みたのです。しかし今度は上手くいきませんでした。 一行目は難なく置換できたのですが、前回上手くいったやり方と同じ作業をしているのに、2行目以降の置換結果が1行目と同じになってしまいます。 こちらの過去ログやGoogleで調べましたが、自分でも理解できる解決策を見つけられず再度質問させていただきました。 よろしくお願いいたします。

  • EXCELでA列とB列の文字が合わせてC列に入るやり方を教えて欲しいで

    EXCELでA列とB列の文字が合わせてC列に入るやり方を教えて欲しいです。 例 A1セルは04+  B1セルは2000 C列に04+ 2000のように作りたいです(真ん中に1個スペース)。 セルが多すぎて、一個ずつやるのは大変時間かかりますので、関数のやり方をご教示ください。 よろしくお願いします。

  • excelで文字列を検索する関数を教えてください。

    いつもお世話になります。 エクセルの関数で、シートAのセルA1に入っている文字列をシートBのC列から探し出し、同じ文字列があればTrueをなければFalseを返す関数を教えてください。 わからないながらも色々調べてみたのですが、検索にはVLOOKUPがよく使われているようですが、シートBのC列は、データの並べ替えができないので、VLOOKUPは、使えないのです。 よろしくお願いします。

  • エクセル 特定の文字を検索して置き換えるマクロ

    次のような連続作業をマクロでできますか。 A列にある特定の文字を検索して、その行にあるB列セルの文字(不定)とそのB列の1行下にあるセルの文字(不定)を連結または置換させてB列に表示 (それぞれ単独に使用) 例 A100に「○○○」の文字を見つけたら、B100にある「□□□□」とB101にある「△△」を連結させB100に「□□□□△△」と置換表示 置き換える場合 A100に「○○○」の文字を見つけたら、B101にある「△△」をB100に「△△」と置換表示 同列の置換は例題でも見つけられて利用できていますが、ひとつ下のセルがからむというのがミソです。 よろしくお願いします。 Windows7/office2013

  • 【エクセル】結合した文字列の検索について

    エクセルで、複数セルの文字列を「=A1&A2&A3&…」という感じで、B1セルに結合するとして、 例えばA2の文字列に「★」という文字が含まれているとします。 検索で「★」を指定した場合、A2のものは引っかかるのですが、B1の結合された文字列は引っかかりません。 B1セルの文字列も通常通り検索できるようにするには、B1セルでどのような処理をすれば良いのでしょうか。

  • Excelで文字列を独自の二進数で表したい。

    A,B,C,D,Eのいずれかを含む文字が順不同でセルに入っているものから、 A=10000 B=1000 C=100 D=10 E=1 と置換して足した、二進数であらわしたり、逆にその二進数から文字列に戻したりしたいです。 (例:DAなら10010、EBCなら1101) VBAの自作関数を含めてExcelの関数でできる方法があればお教えくださると助かります。

  • Excelの文字列検索関数について

    Excel2007で、あるセルに入っている英単語が、別のセル範囲(複数セル)に入っている英文の中にあるかどうか、を調べたいのですが、関数を使って実現できるでしょうか? たとえば、 A1に"This is a pen." A2に"That is a desk" という英文があり、 B1に"bat", B2に"pen"を入れたとします。 この場合、A1~A2に"bat"は存在しないのでC1には"FALSE"が、 A1~A2に"pen"は存在するのでC2には"TRUE"が自動的に入るようにしたいのです。 (TRUE - FALSE でなくても、数字などでもかまいません) FIND関数は単一セルの中の文字列しか検索できないし、 MATCH関数はセル内容が同一でないと結果が出ないのでそのままでは使えません。 何かいい方法はないでしょうか。

  • エクセルに関しての質問です。A列とB列に任意の文字列があり

    A列にもB列にもその文字がある場合、C列にその文字以外の文字を表示させ、B列にしかない文字をD列に表示させる。 (例) A B C D 1 1 3 5 2 2 3 4 4 5 というものは出来ますか?関数でも、マクロでもいいので、とにかく、その文字を摘出したいのです。どなたか違う方法でも良いので、教えて頂きたいです。

  • セル内の文字列に複雑な処理をしたい

    セルの中の複数の異なる文字列を以下のように処理したいのですが、Excelの標準の文字列操作の関数で試行錯誤してみたのですが、どうもうまくできませんでしたので、ご存知の方がいらっしゃいましたらご教授ください。VBAで処理しないとできないかもしれませんがよろしくお願いします。 あるリストのC列に備考欄が設けてあり、次のようなデータが入っています。 4/30 みかんを買った(強制改行して) 5/1 りんごを売った 5/2 ぶどうを食べた 5/5 すいかを買った このセルを調べて、 (1) セル内に"みかん"と"りんご"という文字列があったら、これを取り出して、右隣のセルに表示           (結果)⇒ みかん りんご (2) セル内に"みかん"と"りんご"という文字列があったら、これを"A","B"に置き換えて、右隣のセルに表示          (結果)⇒ A B (3) セル内の数値データと"を食べた"、"を買った"、"を売った"を取り除いて、右隣のセルに表示          (結果) ⇒ みかん りんご ぶどう すいか   (4) セル内に"か"を含む文字列があったら個数に関係なく"A"に置換して右隣のセルに表示             (結果) ⇒ A   すべて取り出したい文字列(上の例ではみかん、りんご)や置換したい文字列(A、B)以外の文字列は全てクリアして表示しないようにします。少し複雑ですが、やり方をご存知の方がいらっしゃいましたら、お教えください。

  • VLOOKUPで●●を含む文字列を検索したい

    VLOOKUP関数を使って、検索値をD列、範囲をAB列にして、 B列の値段をE列に表示させたいと思っています。     A列        B列  C列     D列     E列 おいしいオレンジジュース   150 りんごジュース りんごジュース 天然果汁   200 オレンジジュース 検索範囲の文字には検索値の文字が含まれてはいるのですが、前や後ろ、もしくは前後両方に文字が追加されています。 あれこれ調べましたが、逆の条件の場合は他の関数+ワイルドカードの組み合わせでできるようでしたが、 自分がやりたいことは調べきれず、質問させていただきました。 一応、TRUE、FALSEで切り替えて検索してみたのですが、希望している結果とは違うものが出てしまいました。 (同じ結果が何度もダブって出る。データ的に1対1しかないのに) 文字列の場合のVLOOKUP関数のTRUE、FALSEの定義もよくわかりません。

専門家に質問してみよう