「このセルの文字数って何文字?」「全角と半角で違いがあるの?」
データ整理や文字数制限のある帳票作成時など、文字数を正確に数える必要がある場面はたくさんあります。そんなときに役立つのが、ExcelのLEN関数です。
LEN関数は、文字列の長さを瞬時に計測できるシンプルながらも強力な関数です。この記事では、LEN関数の基本的な使い方から、他の関数との組み合わせ、実際の業務での活用例まで、初心者にも分かりやすく解説します。
LEN関数の基本知識

LEN関数とは
LEN関数は、指定したセルや文字列の文字数を返すExcelの組み込み関数です。「Length(長さ)」の略称で、文字数をカウントする最も基本的な関数として広く使われています。
基本的な構文
=LEN(文字列)
引数の説明
- 文字列:文字数を調べたいテキスト、またはテキストが入力されているセル参照
簡単な使用例
=LEN("Excel")
→ 5(文字数)
=LEN(A1) ※A1に「東京都渋谷区」が入力されている場合
→ 6(文字数)
LEN関数の基本的な使い方
セル内の文字数を調べる
最も基本的な使い方は、セルに入力されているテキストの文字数を調べることです。
実例
セルA1:「Microsoft Excel」
=LEN(A1)
→ 15(スペースも含めて15文字)
直接文字列の文字数を調べる
セル参照ではなく、直接文字列を指定することも可能です。
=LEN("データ分析")
→ 5
=LEN("123-4567")
→ 8(ハイフンも含めて8文字)
文字種別による違いと特徴
全角・半角文字の扱い
LEN関数では、全角文字も半角文字も、どちらも1文字としてカウントされます。
文字種別の例
- ひらがな:「あいう」→ 3文字
- カタカナ:「アイウ」→ 3文字
- 漢字:「東京都」→ 3文字
- 半角英数字:「ABC123」→ 6文字
- 全角英数字:「ABC123」→ 6文字
空白文字とスペースの扱い
重要なポイント:空白文字も1文字としてカウントされます。
セルA1:「渋谷 区」(間にスペースあり)
=LEN(A1)
→ 4(「渋」「谷」「 」「区」の4文字)
改行文字の扱い
セル内でAlt + Enterキーで入力した改行も、1文字として認識されます。
セルA1:「1行目
2行目」
=LEN(A1)
→ 5(「1」「行」「目」「改行」「2」「行」「目」の7文字)
数値データでのLEN関数の動作
数値の文字数カウント
数値が入力されたセルでも、LEN関数は文字列として扱い、桁数をカウントします。
セルA1:12345(数値形式)
=LEN(A1)
→ 5
セルB1:3.14159
=LEN(B1)
→ 7(小数点も含めて)
日付データの扱い
日付形式のデータは、表示形式によって文字数が変わります。
セルA1:2024/12/25
=LEN(A1)
→ 10(表示形式によって異なる)
LEN関数の実践的な応用テクニック

文字数制限チェック
入力フォームやデータベースで、文字数制限を確認する際に便利です。
20文字以内のチェック
=IF(LEN(A1)>20, "超過", "OK")
段階的な文字数チェック
=IF(LEN(A1)=0, "未入力",
IF(LEN(A1)>50, "長すぎます(" & LEN(A1) & "文字)",
"適正(" & LEN(A1) & "文字)"))
文字数範囲チェック
最小文字数と最大文字数の両方をチェックする方法です。
=IF(AND(LEN(A1)>=5, LEN(A1)<=20), "適切", "文字数エラー")
他の関数との効果的な組み合わせ
TRIM関数との組み合わせ
余計な空白を除去してから文字数を確認します。
元のデータ:「 Excel関数 」(前後に空白あり)
=LEN(A1) → 9(空白も含む)
=LEN(TRIM(A1)) → 6(空白を除去後)
実用例:正確な文字数チェック
=IF(LEN(TRIM(A1))>20, "実質文字数が超過", "OK")
SUBSTITUTE関数との組み合わせ
特定の文字を除いた文字数や、特定の文字の出現回数を調べることができます。
スペースの個数をカウント
=LEN(A1)-LEN(SUBSTITUTE(A1," ",""))
特定文字の出現回数
元のデータ:「Excelでデータ分析」
特定の文字「ー」の出現回数:
=LEN(A1)-LEN(SUBSTITUTE(A1,"ー",""))
→ 2(「タ」と「析」の後の2回)
CONCATENATE関数との組み合わせ
複数のセルを結合した文字列の長さをチェックします。
=LEN(CONCATENATE(A1,B1,C1))
または
=LEN(A1&B1&C1)
実際の業務での活用例
例1:顧客名簿の品質管理
顧客名の長さをチェックして、データベース登録時の問題を事前に発見します。
=IF(LEN(B2)>30, "名前が長すぎます(" & LEN(B2) & "文字)",
IF(LEN(B2)<2, "名前が短すぎます", "OK"))
例2:商品説明文の文字数管理
ECサイトの商品説明で、文字数制限に合わせて入力をチェックします。
=IF(LEN(C2)<=200, LEN(C2) & "/200文字",
"200文字を超過(" & LEN(C2) & "文字)")
例3:アンケート回答の分析
自由記述のアンケート回答の文字数を分析し、回答の充実度を測定します。
文字数による分類:
=IF(LEN(D2)<10, "簡素",
IF(LEN(D2)<50, "標準",
IF(LEN(D2)<100, "詳細", "非常に詳細")))
例4:住所データの妥当性チェック
住所の長さをチェックして、入力ミスや欠落を発見します。
=IF(LEN(E2)<5, "住所が短すぎます",
IF(LEN(E2)>50, "住所が長すぎます", "適正"))
LEN関数とLENB関数の違い
それぞれの特徴
LEN関数
- 全角も半角も「1文字」としてカウント
- 現在の標準的な使用方法
- 文字数を知りたい場合に最適
LENB関数
- バイト数をカウント(全角文字は2バイト、半角文字は1バイト)
- 特定の文字コード環境での互換性が必要な場合に使用
- 現在はあまり使用されない
使い分けの例
文字列:「Excel関数」
=LEN("Excel関数") → 8文字
=LENB("Excel関数") → 13バイト(E:1、x:1、c:1、e:1、l:1、関:2、数:2、計13バイト)
使い分けのポイント
- 通常の文字数カウント:LEN関数を使用
- 古いシステムとの互換性:LENB関数を使用
- ファイルサイズや通信データ量:LENB関数を使用
よくあるトラブルと解決方法

「文字数が合わない」問題
原因1:見えない文字が含まれている
問題例
見た目:「データ」
実際:「データ 」(最後に空白)
=LEN(A1) → 4(期待する3文字ではない)
解決策
=LEN(TRIM(A1)) → 3(空白を除去後の文字数)
原因2:改行文字やタブ文字
解決策:不要な文字を除去
=LEN(SUBSTITUTE(SUBSTITUTE(A1,CHAR(10),""),CHAR(13),""))
※CHAR(10):改行、CHAR(13):復帰文字
「0文字と表示される」問題
原因と対処法
原因1:空のセル
=IF(A1="", "空のセルです", LEN(A1))
原因2:エラー値
=IF(ISERROR(A1), "エラーです", LEN(A1))
原因3:数式エラー
=IF(ISTEXT(A1), LEN(A1), "テキストではありません")
上級者向けテクニック
配列数式での一括処理
複数のセルの文字数を一度にチェックします。
範囲A1:A10で20文字を超えるセルの個数:
=SUMPRODUCT((LEN(A1:A10)>20)*1)
範囲A1:A10の平均文字数:
=AVERAGE(LEN(A1:A10))
条件付き書式との組み合わせ
文字数に応じてセルの色を変更します。
- 範囲を選択
- 「ホーム」→「条件付き書式」→「新しいルール」
- 数式を使用:
=LEN(A1)>20
- 書式を設定
複雑な文字数チェック
複数条件を組み合わせた高度なチェックです。
=IF(OR(LEN(A1)<5, LEN(A1)>20, LEN(TRIM(A1))=0),
"入力エラー",
"OK(" & LEN(A1) & "文字)")
パフォーマンスと効率化のコツ
大量データでの効率化
効率的な数式の書き方
遅い方法:
=IF(LEN(A1)>20, "超過", IF(LEN(A1)<5, "不足", "適正"))
速い方法:
=LET(文字数, LEN(A1),
IF(文字数>20, "超過", IF(文字数<5, "不足", "適正")))
メモリ使用量の最適化
大量のLEN関数を使用する場合は、計算結果をコピー&値貼り付けして、数式を値に変換することを検討してください。
まとめ
ExcelのLEN関数は、文字数を簡単かつ正確にカウントできる基本関数として、データ検証や品質管理に欠かせないツールです。
重要なポイント
基本的な特徴
- 全角も半角も1文字としてカウント
- 空白や改行も文字数に含まれる
- 数値も文字列として扱われる
実用的な活用方法
- 入力制限チェック:文字数制限の確認
- データ品質管理:不正なデータの発見
- 他関数との組み合わせ:より高度な文字列処理
注意すべきポイント
- 見えない文字(空白、改行等)の存在
- TRIM関数との組み合わせで正確な文字数取得
- エラーハンドリングで安定した処理
コメント