• ベストアンサー

文字列の一部比較について

エクセルで地区コードと住所の比較をしたいのですが =IF(EXACT(B2,C2),"同じ","違う") 例の様なセルB2とセルC2(一部)の比較はできるのでしょうか? 教えてください。 例     B       C             D  1  地区コード   住所 2   市原市    千葉県市原市八幡     同じ 3   中央区    千葉県千葉市中央区    同じ 4   東京都    東京都墨田区       同じ 5   市原市    千葉県千葉市稲毛区    違う

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

  • ベストアンサー
  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.2

2行目の例ですと、 「千葉県市原市八幡」の中から、「市原市」を検索します。 =FIND(B2,C2) C2にB2が含まれているのなら、何文字目かが返ってきます。 そうでない場合、#VALUEが返されます。 返り値が数字かどうかをISNUMBER関数で確認すれば良いかと。 =IF(ISNUMBER(FIND(B2,C2)),"同じ","違う") とか。

aba23aba
質問者

お礼

ご回答ありがとうございました。 お陰様でちゃんと表示できるようになりました。 また、わからないことがあったら教えてください。 よろしくお願いします。

その他の回答 (2)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

次の方法は如何でしょうか。 D2セルに、=IF(COUNTIF($C2,"*"&$B2&"*"),"同じ","違う")を設定し、下方向にコピーして下さい。

aba23aba
質問者

お礼

ご回答ありがとうございました。 お陰様でちゃんと表示できるようになりました。 また、わからないことがあったら教えてください。 よろしくお願いします。

回答No.1

=IF(ISERROR(SEARCH(B2,C2)),"違う","同じ") でいかがですか? 質問の場合ですと、BとCが完全に一致しないため、求めている結果にはならないです。(この場合ワイルドカードも使えませんし)

aba23aba
質問者

お礼

ご回答ありがとうございました。 お陰様でちゃんと表示できるようになりました。 また、わからないことがあったら教えてください。 よろしくお願いします。

関連するQ&A

  • 二つの配列を比較してループ処理

    配列1 Array ( [東京都] => 1 [神奈川県] => 2 [千葉県] => 4 [群馬県] => 1 [栃木県] => 1 ) 配列2 Array ( [品川区] => 1 [横浜市] => 2 [千葉市] => 1 [船橋市] => 1 [市原市] => 1 [浦安市] => 1 [前橋市] => 1 [宇都宮市] => 1 ) 上記の二つの配列を比較して 東京都 品川区(1) 神奈川県 横浜市(2) 千葉県 千葉市(1) 船橋市(1) 市原市(1) 浦安市(1) 群馬県 前橋市(1) 栃木県 宇都宮市(1) のように整形したいのですが、上手く出来ずに困っております。 どなたかご教授ください。 宜しくお願いいたします。

    • 締切済み
    • PHP
  • エクセル重複データのある列同士の2列を比較したい

    エクセルに詳しい方、教えて頂きたいです。 文で説明すると、難しいので例と一緒に説明させてください。 例えば、下のようなデータがあるとします。 A列 B列 山田さん 栃木県 山田さん 栃木県 山田さん 大阪府 山田さん 栃木県 鈴木さん 三重県 鈴木さん 三重県 大野さん 千葉県 大野さん 東京都 大野さん 東京都 A列はA列で重複したデータがあり、B列はB列で重複したデーターがある場合。 A列 B列 C列 山田さん 栃木県 大阪府 鈴木さん 三重県 大野さん 千葉県 東京都 上ような結果にできる方法はないでしょうか。 例えば住所録をデータで何年分かためており、整理したいが、現在の住所は一つのはずなのに間違えて住所入力したか引越ししたかで複数住所がある。現在はどちらが正しいのか確認するために、その確認資料を作成したい。(同じ名前の人で別人の人はいないとする。) 相違があるかどうかを調べるだけならと、 C列にif関数をいれて見ましたが、ベストな結果ではないと思います。 ちなみに入れた関数は、元のデータのC列目に IF(A1=A2,IF(B1=B2," ","相違あり")," ") 上のIF関数をいれて、下にデータの分だけコピペしました。 エクセルを触るのは久々で、思いつく方法をしてみました。 ですので関数でできるのか、マクロでできるのか、またはエクセルの機能を使用してできるのか、またその方法を教えて頂きたいです。 そんな表にしなくても、こういうのでいいんじゃないの?等の提案でも構いません。 よろしくお願いいたします。

  • Excel VBAで・・・

    こんにちわ。VBA初心者ですが、よろしくお願いします。 下記のような表からの値の取得(値の走査)の処理を考えているのですが、どうも1つ1つのセルを比較して取得するやり方しか考えつかなくて、マクロの実行時間が長くなってしまいます。。。 A列  B列   C列   D列 関東 千葉県 千葉市 中央区 関東 東京都       渋谷区 関東       横浜市 東北 福島県 福島市 関西             伏見区 北陸       新潟市 (A列にはエリア、B列には県、C列には市、D列には区が設定されてます。) 入力値がB,C,D列に全て一致した行のA列を返却させたいと思っています。 例えば、神奈川県横浜市港北区と入力した場合、関東を返して欲しいです。 ただし、空白のセルの箇所は見ない(何でも構わない)ため、 東京都新潟市中央区と入力した場合は北陸を返して欲しいのです。 私が思いつくのは、県を比較して、一致or空白なら次の列(市の比較)へ行き、不一致なら次の行で同じ処理を行うやり方しか思いつきません・・・ 1つ1つの比較以外に何かやり方はございますでしょうか? ExcelのFind関数などの利用も考えたのですが、空白の場合にうまく動かないので。。。 宜しければアドバイスをお願いします。

  • セル内のいろいろな文字列から特定の文字だけ抜き取りたいです。

    EXCEL関数で、 セル内のいろいろな文字列から特定の文字だけ抜き取りたいです。 例えば 「東京都渋谷区Excelビル」 「千葉県船橋市Excelセンタービル」 から 「Excel」 だけを抜き取りたいです。 どうしたらいいでしょうか? 教えてください。よろしく、お願いいたします。

  • 文字列の比較

    excelvbaです。(excel2003) 3個のセル(a1,b1,c1)に文字列が入っています。 このそれぞれ文字列の右8桁を比較し、 最小の文字列が入っているセルに色を付けたいのです。 調べたら、minは使えませんし、dminがありましたが、 right(range("A1").value,8)をどう扱うかが分かりません。 出来ましたら、dminでなく他の方法が在ればベターです。 宜しくお願いします。

  • エクセルで文字列の乱数を作るには?

    例えば、 東京都、千葉県、神奈川県、栃木県、埼玉県、群馬県、茨城県の 7個の文字列があったとしまして、 エクセルでこの7個の文字列のうち5つをランダムで選んで結合し、ひとつの文にする方法はありますでしょうか? できれば、各々の間に『の』『と』『や』『が』『に』等の格助詞を入れて文にしたいと思っております。日本語としての意味は分からなくてもかまいません。 このようなひとつの文を各々の文字列が重複しないように順列で大量に作りたいと思っております。 例 1、千葉県の神奈川県に埼玉県の茨城県と群馬県 2、神奈川県と埼玉県の群馬県が千葉県や東京都 ・・・ セルで重複しないようにランダムに表示できれば、ひとつの文にするのはエディタ等でできますので、セルに表示させる段階まででもかまいません。 どうかよろしくお願いします。

  • 文字からリストとの完全一致部分を抽出したい

    テキストからリストと合致する一文を抽出したいです 例文:セルB1 「私は東京都千代田区1-1に住んでいます」 リスト:セルA1 東京都千代田区     セルA2 神奈川県横浜市     セルA3 埼玉県秩父市     (以下続く) 結果:セルC1 東京都千代田区 例が分かりづらくて申し訳ありません・・・。 とにかくリストと完全一致する部分だけを抜き出したいんです! なにか適当な関数はないものでしょうか?

  • 2つのセルで、条件を満たす時の数。

    シート1のA列には住所が入力されてします。   例:東京都港区・・・,埼玉県さいたま市・・・ 同様に、B列には通勤手段が入力されています。 例:電車,徒歩 A  住所    B  手段  東京都・・・  徒歩  東京都・・・  電車  埼玉県・・・  電車  千葉県・・・  自転車 別のシートのセルに、東京都に在住で徒歩の人数を表示させたいのです。 =COUNTIF(sheet1!A1:A3,"東京都*")までは、出来るのですが・・・。2つになると無理です。 よろしくお願いします。

  • accessでグループ化して集計する方法

    ACCESS2000を使っています。 たとえば、こんなテーブルがあるとします。 |都道府県|市区|区分| |東京都|目黒区|A| |東京都|板橋区|A| |東京都|板橋区|B| |東京都|その他|B| |東京都|その他|C| |千葉県|市川市|A| |千葉県|千葉市|C| |千葉県|その他|A| これを |東京都|目黒区|1| |東京都|板橋区|2| |東京都|その他|2| |千葉県|市川市|1| |千葉県|千葉市|1| |千葉県|その他|3| のように、|区分|に何か入っていたら1カウントして集計したいのですが、どうすればいいでしょうか? 集計クエリで、|都道府県|と|市区|でグループ化したのですが、 |東京都|目黒区|1| |東京都|板橋区|2| |東京都|その他|5| |千葉県|市川市|1| |千葉県|千葉市|1| |千葉県|その他|5| となってしまいます。 |その他|の部分が、どちらも全て合算されてしまいます。 それぞれに出すにはどうしたらいいのでしょうか?

  • エクセルの関数を使って別のシートに文字の一部を返す

    シート1のA列に住所コード、B列に市を入力する欄、シート2のA列に住所コード、B列に県から始まる住所録のデータがある場合、例えばシート2のB列1行目にある愛知県名古屋市という文字列のうち、名古屋市という文字だけをシート1のB列1行目に返したい場合はどのような関数を使えばよいでしょうか? よろしくお願い致します。

専門家に質問してみよう