LEN 関数:構文、使用例、エラーの解決法
2026-10-15 更新 · 無料 · Excel と Google Sheets に対応
構文
=LEN(text)クイック回答
LEN はセル内の文字数を数えます:=LEN(A2) は「jane doe」に 8 を返します。すべての文字が対象——スペース、句読点、改行も含む——そして LEN 自体は比較や合計にそのまま使える本物の数値を返します。日付表示のセルは、見えている日付ではなくシリアル値の長さを返します。
構文
=LEN(text)| 引数 | 意味 |
|---|---|
| text | 測定するセル、リテラル、式。必須——唯一の引数です。数値は表示桁数で、日付は隠れたシリアル値で測られます。 |
引数が 1 つしかないため区切り文字の問題は発生しません:=LEN(A2) はどの言語環境でも同じ見た目です。
LEN はテキスト関数群の物差しです:英字、数字、スペース、句読点、改行のすべての文字を数え、テキストではなく本物の数値を返します。ここで挙げたテキスト関数の中で、結果を VALUE なしで比較や計算に直結できる唯一の関数です。
基本的な使用例
=LEN(A2)基本の測定:「jane doe」は 8、「AE-2026-041」は 11、"" は 0。インポートした ID に LEN 列を足せば、短すぎる(切り詰め済み)行や長すぎる(余白付き)行が即座に浮かび上がります。
=LEN(A2)-LEN(TRIM(A2))スペース監査:差分が TRIM が削除する文字数そのもの。0 ならセルは清潔、3 なら単語の前後や間に 3 つの余計なスペースが隠れています。
=LEN(A2)-LEN(SUBSTITUTE(A2, " ", ""))+1単語カウンター:スペースを全消去したときの縮みがスペース数で、それに 1 を足したのが単語数です。1 スペース区切りのテキストなら簡潔で確実です。
=IF(LEN(A2)>20, "Too long", "OK")長さのゲート:説明文やコード、ユーザー名がシステム上限を超えた行を、インポートファイルに入る前に検出します。LEN は数値を返すので比較に変換は不要です。
=LEN(A2)-LEN(SUBSTITUTE(A2, CHAR(10), ""))改行検出器:CHAR(10) の改行は画面に見えませんが文字として数えられます。差分がセルに潜む改行の本数をそのまま暴く——クリーンアップ前の最速診断です。
2026/10/15 と表示される日付の LEN は 5 を返します。LEN は見えているテキストではなく、下にあるシリアル値(45945)を測るからです。ユーザー定義表示の数値も同様——LEN が見るのは保存値で、書式は決して見ません。
よくあるエラーと解決法
| 症状 | 最も多い原因 | 解決法 |
|---|---|---|
| 日付が 10 ではなく 5 を返す | LEN は保存されたシリアル値(45945)を測り、表示の 2026/10/15 ではありません。 | 書式適用後のテキストを測る:=LEN(TEXT(A2, "yyyy/mm/dd"))。 |
| 空に見えるセルが 1 や 2 を返す | セルは空ではなく、通常または改行なしスペースを 1~2 個抱えています。 | =LEN(TRIM(A2)) で確認——TRIM 後に 0 ならスペースだけが入っていた証拠。 |
| カウントが見た目と合わない | 不可視文字もカウントされます:改行 CHAR(10) も改行なしスペース CHAR(160) も各 +1。 | =LEN(A2)-LEN(SUBSTITUTE(A2, CHAR(10), "")) で改行を検出し、その後にクリーンアップ。 |
| 日本語テキストの長さが合わない | LEN は文字数で数えるので、全角も 1 文字です。バイト基準のシステムは CJK 文字に 2 を期待します。 | LENB を使います。DBCS 設定では 2 バイト文字を 2 として数えます。 |
| 結果を 10 と比較できない | まれです——LEN は本来数値を返します。比較が失敗するならその「数値」はインポート由来のテキストです。 | =ISNUMBER(LEN(A2)) で確認。FALSE なら測ったセル自体が文字列書式——ソースを先に VALUE で包みます。 |
エラーではありませんが知っておくべき点:LEN が見るのは保存値で、書式ではありません。テキスト「12345」と数値 12345 を区別できず——どちらも 5——四捨五入も切り詰めも空白スキップもしません。
LEN と LENB の比較
| LEN | LENB | |
|---|---|---|
| 数え方 | 文字数——全角も半角も 1 文字 | バイト数——半角 1、全角(CJK)2 |
| 「jane doe」は | 8 | 8 |
| 「東京都」は | 3 | DBCS 設定では 6 |
| 典型的な用途 | 文字数上限、監査、西文の単語数 | バイト基準のインポート、レガシーシステム、CJK 項目の検証 |
受け手で選びます:近代的なシステムや大半のインポートは LEN、レガシーのホストや固定バイト配置は LENB。1 バイト圏では両者の結果は同一——だから LENB は欧米で無名のままです。
LEN とフラッシュフィルの比較
| LEN 数式 | フラッシュフィル(Ctrl+E) | |
|---|---|---|
| 出力 | ヘルパー列の生きた数式。ソース変更で再計算 | 静的な値の 1 回書き込み。新しい行は再実行 |
| 精度 | 決定的——毎回正確なカウント | パターン推測——結果列の spot チェックが必要 |
| 向いている作業 | 最新性が必要な監査・検証・レポート | 一度きりの抽出。後に LEN で長さを検証 |
| 利用可能環境 | すべての Excel バージョンと Google Sheets | Excel 2013 以降。Sheets はスマートフィルが対応 |
両者は連携します:フラッシュフィルが乱れたセルからコードを抽出し、LEN 列が抽出結果の長さの一致を信用する前に証明する。フィルは推測、LEN は検収です。
Google Sheets での LEN
- 同じ名前・同じ 1 引数——上記の数式はすべてそのまま Sheets に貼り付けられます。
- Sheets にも LENB があり、2 バイト文字に対して同じバイト計数をします。
- 改行検出器も同一動作——Sheets のセルも CHAR(10) 改行を同様に保存します。
- 日付の挙動も同じ:LEN は表示書式ではなく、下のシリアル値の長さを返します。
制限と実践テクニック
- LEN は書式ではなく保存値を測ります:日付はシリアル値、数値は桁——「2026/10/15」は 10 文字に見えて測ると 5。
- すべての文字が対象:CHAR(10) 改行、CHAR(160) 改行なしスペース、タブは各 +1——クリーン前に LEN 差分で暴きます。
- LEN は本物の数値を返すので VALUE は不要——ただし測る側のセルがテキストの可能性はあります。数字を数値として扱うならソースを VALUE で包みます。
- バイト上限のシステムに流す CJK データは LENB に切り替える——2 バイト文字は 2——インポート拒否の前に。
- 監査を 1 列にまとめる:=LEN(A2)-LEN(TRIM(SUBSTITUTE(A2, CHAR(10), " "))) がすべての不可視文字を一度に数えます。
LEN はクリーンアップ ラインの検査ゲージと考えます:何も変えず、測るだけ——余白、改行、切り詰め。各工程の前後で走らせれば、差分がその工程の出来栄えを教えてくれます。
関連ツール
関連関数
よくある質問
Excel の LEN 関数は何をしますか?
文字数を数えます:=LEN(A2) は「jane doe」に 8 を返します。スペース・句読点・改行もすべてカウント対象で、結果は比較や合計にそのまま使える本物の数値です。
2026/10/15 のような日付に LEN が 5 を返すのはなぜ?
日付はシリアル値——45945——として保存され、LEN は表示テキストではなくその保存値を測るからです。書式済み文字列を測るなら =LEN(TEXT(A2, "yyyy/mm/dd")) が 10 を返します。
LEN で単語数を数えるには?
=LEN(A2)-LEN(SUBSTITUTE(A2, " ", ""))+1:スペースを消すと 1 スペースにつき 1 文字縮むので、差分 +1 が単語数です。1 スペース区切りのテキストなら確実です。
空に見えるセルの LEN が 1 や 2 を返すのは?
セルには不可視文字——通常または改行なしスペース——が入っています。=LEN(TRIM(A2)) を実行して 0 に落ちれば、中身はスペースだけ。検索が失敗し続けた原因まさにそれです。
LEN と LENB の違いは?
LEN は文字数——全文字が 1。LENB はバイト数——DBCS 設定では 2 バイト文字ごとに 2 で、「東京都」は LEN で 3、LENB で 6。受け手がバイトで測るなら LENB です。
LEN はテキスト「12345」と数値 12345 を区別できますか?
できません——どちらも 5 です。LEN はデータ型ではなく保存文字を見るからです。型は ISNUMBER で別途確認するか、比較や合計の前に VALUE で数字テキストを変換します。
LEN は Google Sheets で使えますか?
使えます——同じ名前・同じ 1 引数・同じ結果です。LENB も利用でき、改行検出器も同一動作、日付はシリアル値の長さを返す点まで Excel と同じです。
自分のファイルで試す準備はできましたか?
Excelセル内の改行を削除を開く — 無料