※本ページにはプロモーション(広告)が含まれています
【2026年最新版】ExcelのLEFT・RIGHT・MID・LEN・CONCATなどテキスト関数の使い方【完全ガイド】
「Excelでセルの一部だけを取り出したい」「住所から都道府県だけを抜き出すにはどうすればいい?」「バラバラのデータを一つに結合したい」——こんな場面で役立つのがExcelのテキスト関数です。LEFT・RIGHT・MID・LEN・FINDなど文字列を操作する関数を使いこなすと、手作業では何時間もかかる処理が数秒で完了します。
この記事では、Excelで最もよく使われるテキスト関数を体系的に解説します。各関数の書式から実用的な使用例まで丁寧に説明するので、初心者の方でもすぐに活用できるようになります。

この記事でわかること
- LEFT・RIGHT・MIDで文字列の一部を取り出す方法
- LENで文字数を数える方法
- FINDおよびSEARCHで特定の文字を検索する方法
- SUBSTITUTEで文字を置換する方法
- CONCATおよびTEXTJOINで文字列を結合する方法
- TEXTで数値や日付を指定した書式の文字列に変換する方法
- 各関数を組み合わせた実用的な活用例
テキスト関数の概要一覧
| 関数名 | 機能 | 主な用途 |
|---|---|---|
| LEFT | 左から指定した文字数を取り出す | 先頭の数文字を抽出 |
| RIGHT | 右から指定した文字数を取り出す | 末尾の数文字を抽出 |
| MID | 指定した位置から指定した文字数を取り出す | 中間部分を抽出 |
| LEN | 文字列の文字数を返す | 文字数カウント・動的な抽出 |
| FIND | 大文字小文字を区別して検索 | 特定文字の位置を取得 |
| SEARCH | 大文字小文字を区別せず検索(ワイルドカード対応) | 柔軟な検索 |
| SUBSTITUTE | 特定の文字列を別の文字列に置換 | 一括置換・クリーニング |
| CONCAT | 複数のセルまたは文字列を結合 | 氏名結合・住所結合 |
| TEXTJOIN | 区切り文字を指定して結合 | カンマ区切りのリスト作成 |
| TEXT | 数値・日付を書式付き文字列に変換 | 日付フォーマット・数値整形 |
LEFT関数:左から文字を取り出す
書式
=LEFT(文字列, 文字数)
使用例
| 数式 | 元の値 | 結果 |
|---|---|---|
| =LEFT(A1, 3) | 東京都新宿区 | 東京都 |
| =LEFT(A1, 5) | 2026/05/07 | 2026/ |
| =LEFT(A1, 2) | AB12345 | AB |
実用例:住所データから都道府県だけを取り出す場合に便利です。ただし都道府県の文字数が「東京都(3文字)」「北海道(3文字)」「神奈川県(4文字)」と異なる場合はFIND関数との組み合わせが必要です。
RIGHT関数:右から文字を取り出す
書式
=RIGHT(文字列, 文字数)
使用例
| 数式 | 元の値 | 結果 |
|---|---|---|
| =RIGHT(A1, 4) | 山田太郎様 | 太郎様 |
| =RIGHT(A1, 5) | TEL:03-1234-5678 | 5678 |
| =RIGHT(A1, 3) | 商品コードXYZ | XYZ |
実用例:電話番号の末尾4桁を取り出したり、ファイル名から拡張子(3〜4文字)だけを取得したりするのに便利です。
MID関数:中間部分を取り出す
書式
=MID(文字列, 開始位置, 文字数)

使用例
| 数式 | 元の値 | 結果 |
|---|---|---|
| =MID(A1, 5, 4) | 〒100-0001 | 100- |
| =MID(A1, 4, 2) | 2026年05月07日 | 年0(※半角換算に注意) |
| =MID(A1, 3, 4) | AB12345 | 1234 |
実用例:郵便番号「〒123-4567」からハイフン後の4桁(=MID(A1,6,4))を取り出したり、固定フォーマットの文字列から特定部分を抜き出すのに活用できます。
LEN関数:文字数を数える
書式
=LEN(文字列)
使用例と活用法
LEN単体での使用より、他の関数と組み合わせて使うことが多い関数です。
- 文字数の確認: =LEN(A1) → セルの文字数を返す
- 末尾の特定文字を除いて取得: =LEFT(A1, LEN(A1)-1) → 末尾の1文字を除いた文字列
- 動的な右からの取り出し: =RIGHT(A1, LEN(A1)-FIND(“@”,A1)) → @以降を取り出す
実用例:メールアドレス「user@example.com」から「@」以降のドメインを取り出す場合、=MID(A1, FIND(“@”,A1)+1, LEN(A1)-FIND(“@”,A1)) という数式で実現できます。
FIND関数・SEARCH関数:文字の位置を検索する
書式
=FIND(検索文字列, 対象, [開始位置])
=SEARCH(検索文字列, 対象, [開始位置])
FINDとSEARCHの違い
| 関数 | 大文字小文字の区別 | ワイルドカード(* ?) |
|---|---|---|
| FIND | 区別する(AとaはNG) | 使用不可 |
| SEARCH | 区別しない | 使用可能(*で任意文字列) |
使用例:
- =FIND(“@”, “user@example.com”) → 5(@は5文字目)
- =SEARCH(“tokyo”, “Tokyo Metro”) → 1(大文字小文字を区別しない)
- =FIND(“都”, “東京都新宿区”) → 3(「都」は3文字目)
見つからない場合は「#VALUE!」エラーが返ります。エラーを避けるには IFERROR と組み合わせます。
=IFERROR(FIND("都", A1), 0)
SUBSTITUTE関数:文字列を置換する
書式
=SUBSTITUTE(文字列, 検索文字列, 置換文字列, [置換対象])
第4引数「置換対象」を省略すると全ての一致箇所を置換します。数値を指定するとその番目のみを置換します。
使用例
| 数式 | 元の値 | 結果 |
|---|---|---|
| =SUBSTITUTE(A1, “様”, “”) | 山田太郎様 | 山田太郎 |
| =SUBSTITUTE(A1, “-“, “”) | 03-1234-5678 | 0312345678 |
| =SUBSTITUTE(A1, ” “, “”, 1) | 山田 太郎 | 山田太郎(先頭のスペースのみ除去) |
実用例:電話番号からハイフンを取り除く(=SUBSTITUTE(A1, “-“, “”))、氏名の全角スペースを除去する(=SUBSTITUTE(A1, “ ”, “”))など、データクリーニングに非常に便利です。
CONCAT関数・TEXTJOIN関数:文字列を結合する
CONCAT関数の書式
=CONCAT(文字列1, 文字列2, ...)
旧バージョンのExcelでは「CONCATENATE」関数が同じ機能を持ちます。CONCAT はExcel 2019以降で使用可能です。
TEXTJOIN関数の書式
=TEXTJOIN(区切り文字, 空白セルを無視するか, 文字列1, 文字列2, ...)
使用例の比較
| 関数 | 数式例 | A1=山田, B1=太郎の場合 |
|---|---|---|
| CONCAT | =CONCAT(A1, ” “, B1) | 山田 太郎 |
| TEXTJOIN | =TEXTJOIN(“, “, TRUE, A1:D1) | 山田, 太郎(空白セルは除外) |
| & 演算子 | =A1&” “&B1 | 山田 太郎 |
TEXTJOINの強み:A1:Z1のように範囲を指定できるため、複数列のデータをカンマ区切りで一気に結合するのに便利です。第2引数をTRUEにすると空白セルをスキップします。
TEXT関数:数値や日付を書式付き文字列に変換する
書式
=TEXT(値, 表示形式)

よく使う表示形式コード
| 表示形式コード | 変換例 | 結果 |
|---|---|---|
| “yyyy年mm月dd日” | =TEXT(TODAY(), “yyyy年mm月dd日”) | 2026年05月07日 |
| “aaaa” | =TEXT(A1, “aaaa”) | 木曜日(曜日名) |
| “#,##0” | =TEXT(1234567, “#,##0”) | 1,234,567 |
| “0.00%” | =TEXT(0.1234, “0.00%”) | 12.34% |
| “000-0000” | =TEXT(1234567, “000-0000”) | 123-4567(郵便番号形式) |
実用例:日付と文字を結合する際に TEXT 関数が欠かせません。=CONCAT(“作成日:”, TEXT(TODAY(), “yyyy年mm月dd日”)) とすることで「作成日:2026年05月07日」という文字列が作れます。日付セルをそのまま & で結合すると数値(シリアル値)になってしまうため、TEXT関数で文字列化する必要があります。
実用的な組み合わせ例
例1:メールアドレスからドメインを抽出する
=MID(A1, FIND("@",A1)+1, LEN(A1)-FIND("@",A1))
「user@example.com」から「example.com」を取り出します。
例2:姓名を別々のセルに分ける(半角スペース区切り)
姓: =LEFT(A1, FIND(" ",A1)-1)
名: =MID(A1, FIND(" ",A1)+1, LEN(A1)-FIND(" ",A1))
例3:電話番号を統一形式に整える
=SUBSTITUTE(SUBSTITUTE(A1,"-","")," ","")
「03-1234-5678」や「03 1234 5678」を「0312345678」に統一します。
例4:数値に単位を付けて文字列結合する
=TEXT(A1,"#,##0")&"円"
1234567 → 「1,234,567円」という見やすい表示になります。
例5:住所から都道府県を除いた部分を取り出す
=MID(A1, MIN(IFERROR(FIND("都",A1),99), IFERROR(FIND("道",A1),99), IFERROR(FIND("府",A1),99), IFERROR(FIND("県",A1),99))+1, LEN(A1))
都道府県の区切り文字(都・道・府・県)を検索して、その後ろを取り出します。
この記事に関連するおすすめ商品
Excel 文字列関数 完全ガイド
約1,800円
LEFT/RIGHT/MID詳細解説
Microsoft 365 Personal
約14,900円/年
最新Excel関数が全て使える
Excel ショートカット チートシート
約500円
関数入力効率化
※ 価格は変動する場合があります。最新価格はリンク先でご確認ください
よくある質問(FAQ)
Q1. LEFTとMIDの違いは何ですか?
LEFT は常に文字列の先頭(左端)から取り出しますが、MID は開始位置を自由に指定できます。「常に先頭から」ならLEFT、「途中から取り出したい」ならMIDを使います。たとえば「2026年05月07日」の「05月」部分(5文字目から3文字)を取り出すには =MID(A1,5,3) を使います。
Q2. SUBSTITUTEとREPLACEの違いは何ですか?
SUBSTITUTEは「特定の文字列を別の文字列に置換」するのに対し、REPLACEは「指定した位置から指定した文字数分を置換」します。内容で置換したい場合はSUBSTITUTE、位置で置換したい場合はREPLACEを使います。
Q3. CONCATとTEXTJOINの使い分けは?
固定の文字列や少数のセルを結合する場合はCONCAT(または & 演算子)が簡単です。一方、範囲を指定して区切り文字付きで結合したい場合や空白セルをスキップしたい場合はTEXTJOINが便利です。TEXTJOIN はExcel 2019以降のみ使用可能です。
Q4. TEXT関数で変換した数値の計算はできますか?
TEXT関数の結果は「文字列」です。文字列として出力されるため、SUM関数などで計算することはできません。表示目的(帳票・ラベル・印刷用)にのみ使用し、計算には元の数値セルを使用してください。
Q5. FINDで検索文字列が見つからない場合はどうなりますか?
FINDおよびSEARCHは、検索文字列が見つからない場合に「#VALUE!」エラーを返します。エラーを回避するには、=IFERROR(FIND(“検索文字”,A1), 0) のようにIFERROR関数で囲み、見つからない場合のデフォルト値(ここでは0)を設定します。
まとめ
Excelのテキスト関数を活用すると、手作業では大変なデータ整形・抽出・結合が自動化できます。各関数の要点をまとめると次のとおりです。
- LEFT・RIGHT・MID: 文字列の左・右・中間から任意の文字数を取り出す
- LEN: 文字数を返す。他の関数と組み合わせて動的な抽出に使う
- FIND / SEARCH: 文字の位置を返す。大文字小文字の区別があるかどうかで使い分ける
- SUBSTITUTE: 指定した文字列を置換・削除する。データクリーニングに必須
- CONCAT / TEXTJOIN: 複数の文字列を結合する。TEXTJOINは区切り文字と空白スキップが便利
- TEXT: 数値・日付を書式付き文字列に変換する。文字列との結合時に必須
これらの関数を組み合わせることで、住所の分割・電話番号の整形・メールアドレスの解析など、実務で頻繁に必要とされるデータ変換を自動化できます。まずはLEFT・RIGHT・MIDの3関数から使い始めてみてください。
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!