【エクセル関数】文字を検索・置換する
エクセル関数を使って文字を検索・置換するテクニックを紹介します
文字列の検索
文字列の検索を使ったテクニックの紹介です
特定の文字を検索(FIND)
レポート内の特定のセクションへのリンクを作成する際や、データのパターンを分析する際に、FIND関数を使うことでこれを簡単に特定できます
FIND関数は、検索対象の文字列内で特定の文字列が最初に出現する位置(文字数)を返します。大文字と小文字を区別し、次のように使います
使用例:
セルB2のこれはテストです
からテスト
の場所を取得します
=FIND("テスト",B2)
実行結果:4
セルB3内で”テスト”が最初に出現する位置を数値で取得できます
“これはテストです”という文字列の中で、”テスト”という単語が5番目の位置にあるため、FIND
関数は5
を返します
文章内の特定のセクションへジャンプしたり、データ内の特定のパターンを把握したりすることができます
該当する文字列が見つからない場合は#VALUE!
エラーが返ります
2番目に出現する文字を検索(FIND)
特定の文字が2番目、3番目と続けて出現する位置を特定したい場合はFIND関数を応用することで解決できます
最初の出現位置を見つけた後、その位置に1を加えた位置から再度検索を開始することで、同じ文字列内で2番目以降に出現する同じ文字や単語の位置を見つけます
使用例:
セルB2の新製品発売!新製品に注目!
から2番目に出現する新製品
の場所を取得します
=FIND("新製品",B2,FIND("新製品",B2)+1)
実行結果:7
B2内の文字列において、”新製品”が2番目に出現する位置を数値で返します
検索文字列が見つからない場合は#VALUE!
エラーが返ります
文字列の置換
文字列の置換を使ったテクニックの紹介です
クレジットカード番号の一部を伏せる(REPLACE)
REPLACE関数を使えば、テキストの一部を新しい文字列で素早く置換できます
使用例:
クレジットカード番号の一部を伏せる
=REPLACE(B2, 1, 14, "****-****-****")
実行結果:****-****-****-4444
セルB2の1
文字目から14
文字を ****-****-****
に置換しています
プライバシー保護やデータ整理に便利で、使い方も非常にシンプルです
電話番号にハイフンを挿入(REPLACE)
番号やコードのフォーマットを一括で瞬時に変更できます
使用例:
電話番号をハイフンで区切りたい場合などに便利
=REPLACE(B2, 5, 0, "-")
実行結果:****-****-****-4444
セルB2の5
文字目の0
文字を -(ハイフン)
に置換しています
0
を指定する事で、置換せずに挿入する事ができています
削除したい場合は""
を指定する事で可能です
特定の文字を置換(SUBSTITUTE)
特定の文字を他の文字列に簡単に置き換えることができます
使用例:
セルB2のサッカー
をバスケット
に置換する
=SUBSTITUTE(B2, "サッカー", "バスケット")
実行結果:バスケットボール
セルB2のサッカー
という文字列をバスケット
という文字列に置換しています
同じ文書内で繰り返される特定の文字列を一括で変更したい時に便利です
n番目に現れる文字列を置換(SUBSTITUTE)
特定の文字を別の文字に簡単に置き換えることができます
使用例:
セルB2の/(スラッシュ)
を&(アンパサンド)
に置き換え
=SUBSTITUTE(B2, "/", "&", 1)
実行結果:****-****-****-4444
セルB2の2023 / 12 / 25
の 1
番目の/(スラッシュ)
を&(アンパサンド)
に置換しています
第4引数の「置換対象」に数値を入れる事で、何番目を置換するかを指定できます
文書の整理やデータの再構成に役立ちます
バージョン履歴の表記を整えたい場合など、一貫性のあるフォーマットにするのに有効です
市街局番をカッコで囲む(SUBSTITUTE&REPLACE)
特定の文字を別の文字に簡単に置き換えることができます
使用例:
セルB2の03-1234-5678
を(03)1234-5678
に置換
=SUBSTITUTE(REPLACE(B2,1,0,"("),"-",")",1)
実行結果:(03)1234-5678
REPLACE(B2,1,0,"(")
関数で、セルB2の1
文字目の0
文字を (
に置換しています
SUBSTITUTE
関数が1
番目の-
を見つけて)
に置き換えます
全角スペースに揃える(SUBSTITUTE)
半角、全角スペースの混在した文字列にて全角スペースに統一することができます
使用例:
セルB2の 小 林 風 花
の半角スペース
を全角スペース
に置換します
=SUBSTITUTE(B2, " ", " ")
実行結果: 小 林 風 花