はじめに
Excelで文字列を扱うとき、
「特定の文字がどこにあるか知りたい」
「文字の長さを調べて分割したい」
という場面はよくあります。
例えば、
- 「山田 太郎」からスペースの位置を見つけたい
- 「A12345」から文字と数字の境目を特定したい
- 「東京都新宿区…」など住所データの中から特定語を探したい
そんなときに役立つのが、LEN関数・SEARCH関数・FIND関数 の3つです。
この記事では、それぞれの使い方と違い、実務での組み合わせテクニックまで解説します。
LEN関数(文字数を数える)
書式
=LEN(文字列)
例
| A列 | 式 | 結果 |
|---|---|---|
| Excel | =LEN(A1) | 5 |
| 山田太郎 | =LEN(A2) | 4 |
ポイント
- 全角文字も1文字としてカウント(Excelは全角/半角を区別しない)
- スペースや記号も文字として数える
活用例
=LEN(A1)-LEN(SUBSTITUTE(A1," ",""))
→ スペースの数を数える(文字列の差分計算)
SEARCH関数(文字の位置を検索)
書式
=SEARCH(検索文字, 対象文字列, [開始位置])
例
| A列 | 式 | 結果 |
|---|---|---|
| 山田 太郎 | =SEARCH(" ",A1) | 3 |
| A12345 | =SEARCH("1",A2) | 2 |
ポイント
- 指定した文字が「何文字目にあるか」を返す
- 大文字・小文字を区別しない
- 見つからない場合はエラー(#VALUE!)
応用
=LEFT(A1,SEARCH(" ",A1)-1)
→ スペースの前までを抽出(姓を取得)
FIND関数(SEARCHの厳密版)
書式
=FIND(検索文字, 対象文字列, [開始位置])
特徴と違い
| 比較項目 | SEARCH関数 | FIND関数 |
|---|---|---|
| 大文字小文字の区別 | しない | する |
| ワイルドカード(*、?) | 使える | 使えない |
| 処理速度 | 少し遅い | やや速い |
| エラー処理 | 同じ(見つからない場合#VALUE!) |
例
| A列 | 式 | 結果 |
|---|---|---|
| Excel | =SEARCH("e",A1) | 1 |
| Excel | =FIND("e",A1) | 1 |
| Excel | =FIND("E",A1) | #VALUE!(大文字は別扱い) |
実務での組み合わせテクニック
① 姓名の分割(SEARCH+LEFT+RIGHT)
| A列 | 式(姓) | 式(名) |
|---|---|---|
| 山田 太郎 | =LEFT(A1,SEARCH(" ",A1)-1) | =RIGHT(A1,LEN(A1)-SEARCH(" ",A1)) |
→ スペース位置をSEARCHで取得し、その前後で分割。
② コードや記号の後ろを取り出す(FIND+MID)
| A列(商品コード) | 式 | 結果 |
|---|---|---|
| X-AB-9876 | =MID(A1,FIND("-",A1)+1,4) | AB-9 |
→ FINDで「-」の位置を取得 → その次から文字を抜き出し。
③ 特定文字を含むかどうか判定
=IF(ISNUMBER(SEARCH("東京",A1)),"含む","含まない")
→ 「東京」が含まれていれば「含む」と表示。
ポイント
- SEARCHは「部分一致検索」に強い
- FINDでも同様の書き方可(ただし大文字小文字を区別)
SEARCHとFINDの使い分けまとめ
| 項目 | SEARCH | FIND |
|---|---|---|
| 大文字小文字の区別 | しない | する |
| ワイルドカード(*?) | 使える | 使えない |
| 検索精度 | 柔軟(部分一致可) | 厳密(完全一致) |
| 実務向き用途 | 名前・住所検索 | 英数字コード検索 |
覚え方
あいまい検索は「SEARCH」
厳密検索は「FIND」
応用:LENとSEARCHを組み合わせて位置・範囲を動的に指定
=MID(A1,SEARCH("-",A1)+1,LEN(A1)-SEARCH("-",A1))
→ 「-」以降のすべての文字を抽出。
コードやメールアドレスなど、長さが異なる文字列にも対応可能。
まとめ
- LEN関数:文字数を調べる
- SEARCH関数:文字の位置を探す(大文字小文字を区別しない)
- FIND関数:位置を探す(大文字小文字を区別する)
- LEFT・RIGHT・MID関数と組み合わせると、文字操作が自在に
データ整形やコード分割の精度を高めるには、
まず「文字の長さ」と「文字の位置」を正確に把握すること。
LEN・SEARCH・FINDをマスターすれば、文字操作の自動化が一気に進みます。


コメント