
エクセルのLEN関数を使って、セル内の文字数をカウントする方法をご紹介します。SUMPRODUCT関数を組み合わせて範囲全体を合計する方法や、SUBSTITUTE関数でスペース・改行を除外する方法も解説しているので、ぜひ参考にしてみてください。
1つのセルの文字数を数える

LEN関数を使うと、指定したセル内の文字数を取得できます。
例:=LEN(A2)
💡 ポイント:空白や改行も「1文字」として数えられます。
LEN関数の引数:LEN(文字列)
複数セル・範囲の文字数を数える

指定した範囲内の文字数をまとめて合計します。
例:=SUMPRODUCT(LEN(A2:A3))
SUMPRODUCT関数の引数:(配列1, [配列2, …])
【数式の解説】
- LEN関数:指定した範囲内にある「各セル」の文字数を数えます。
- SUMPRODUCT関数:各セルの文字数を受け取り、すべて足し合わせます。
💡 ポイント:
- 古いエクセルではSUM関数で「範囲」を処理できないため、どのバージョンでも共通して使えるSUMPRODUCT関数を使用しています。
スペースや改行を除いて文字数を数える
スペースを除く

半角スペースと全角スペースの両方を除外して、文字数だけをカウントします。
例:=LEN(SUBSTITUTE(SUBSTITUTE(A2," ","")," ",""))
SUBSTITUTE関数の引数:(文字列, 検索文字列, 置換文字列, [置換対象])
【数式の解説】
- 内側のSUBSTITUTE関数: 指定したセル内の「半角スペース」を空白(
"")に置換します。 - 外側のSUBSTITUTE関数: さらに「全角スペース」を空白(
"")に置換します。 - LEN関数:スペースがすべて消えた状態の文字数をカウントします。
改行を除く

セル内改行を除外して、文字数だけをカウントします。
例:=LEN(SUBSTITUTE(A2, CHAR(10), ""))
【数式の解説】
- SUBSTITUTE関数:改行(
CHAR(10))を空白("")に置換します。 - LEN関数:改行が消えた状態の文字数をカウントします。
📖 参考:CHAR(10)の詳しい解説は「CHAR関数の使い方!」の記事をご覧ください。
範囲内の「文字だけ」を数える

スペースと改行をすべて除いて、指定した範囲内の文字数をまとめて合計します。
例:=SUMPRODUCT(LEN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2:A3," ","")," ",""),CHAR(10),"")))
【数式の解説】
- SUBSTITUTE関数: 範囲内のセルから「半角スペース」「全角スペース」「改行」を空白(
"")に置換して削除します。 - LEN関数: スペースと改行が消えた状態の文字数を、各セルごとに数えます。
- SUMPRODUCT関数: 各セルの文字数を受け取り、すべて足し合わせます。
まとめ
| やりたいこと | 数式 |
| 1つのセルの文字数 | =LEN(セル) |
| 複数セル・範囲の合計 | =SUMPRODUCT(LEN(範囲)) |
| 空白を除外 | =LEN(SUBSTITUTE(SUBSTITUTE(セル," ","")," ","")) |
| 改行を除外 | =LEN(SUBSTITUTE(セル,CHAR(10),"")) |
| 範囲内の「文字だけ」合計 | =SUMPRODUCT(LEN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(範囲," ","")," ",""),CHAR(10),""))) |