Excelで氏名、商品名、文章、問い合わせ内容などを扱っていると、セル内の文字数や単語数をすばやく数えたい場面があります。
文字数の上限を確認したいときや、入力漏れを見つけたいときは、手作業で数えるより関数を使う方法が便利です。
エクセルではLEN関数を基本に、SUBSTITUTE関数、TRIM関数、COUNTA関数などを組み合わせることで、全角文字、半角文字、スペース、特定の文字を除いた文字数まで判定できます。
文字数を数える基本はLEN関数です。
空白を除く文字数はSUBSTITUTE関数と組み合わせます。
英単語数は空白の数を利用して計算できます。
この記事では、1行目にヘッダーがある表を例にしながら、文字数と単語数をカウントする数式、実務で役立つ判定方法、数えられない場合の確認点を解説します。
数える対象を先に決めることが、正しい集計への近道です。
エクセルで文字数を数える方法【LEN関数】
それではまず、セルに入力された文字数を求める基本操作について解説していきます。
| A | B | C |
|---|---|---|
| 1 | 商品名 | 文字数 |
| 2 | 国産りんごジュース | 9 |
| 3 | Office用品セット | 14 |
LEN関数は、指定したセルに含まれる文字の個数を返す関数です。
=LEN(B2)
上の数式をC2セルに入力すると、B2セルの国産りんごジュースに含まれる文字数が表示されます。
ひらがな、カタカナ、漢字、英字、数字、記号は、通常いずれも1文字として数えられます。
LEN関数は見た目の幅ではなく、セル内に格納された文字を数える関数です。
LEN関数の入力手順
まずはLEN関数を入力する操作を確認していきます。
文字数を表示したいC2セルをクリックして選択します。

数式バー、またはセルへ=LEN(B2)と入力しましょう。
Enterキーを押すと、B2セルにある文字列の長さがC2セルへ表示されます。
関数名のLENはlengthの略であり、文字列の長さを意味します。
セル参照のB2を直接入力する代わりに、数式入力中にB2セルをクリックして指定しても問題ありません。
数式を入力したセルを選択すると、数式バーには計算結果ではなく=LEN(B2)という数式そのものが表示されます。
【操作のポイント】文字数を求めるセルと、数える元データのセルを取り違えないように確認しましょう。
オートフィルによる数式のコピー
続いては、複数行の文字数をまとめて計算する方法を確認していきます。
C2セルにLEN関数を作成したら、セル右下に表示される小さな四角形であるフィルハンドルへマウスポインターを合わせます。

ポインターが黒い十字に変わったら、下方向へドラッグします。
するとC3、C4以降にも数式がコピーされ、参照先はB3、B4のように行番号に合わせて自動調整されます。
データが連続している場合は、フィルハンドルをダブルクリックする方法も便利です。
この方法では、隣接するB列の入力が続く範囲まで数式が自動入力されます。
コピー後のセルを一つ選び、参照先が意図した行になっているかを確認すると安心です。
【操作のポイント】サンプルデータの1行目は見出しなので、数式は2行目のC2から入力します。
空白と改行を含めた文字数
続いては、LEN関数が何を文字として扱うのかを確認していきます。
LEN関数では、文字と文字の間にある半角スペースや全角スペースも1文字として数えられます。
たとえばB2セルにExcel 基礎講座と入力されている場合、英字5文字、半角スペース1文字、漢字とカタカナ4文字の合計10文字として計算されます。
セル内でAltキーとEnterキーを使って改行した場合も、改行コードは1文字分として数えられます。
見た目には気づきにくい余分な空白があると、文字数が想定より多くなることがあります。
入力規則や文字数制限を設けるときは、スペースを含めるかどうかを事前に決めておくことが大切です。
LEN関数では半角スペース、全角スペース、改行も文字数に含まれます。
【操作のポイント】表示上は同じように見える文字列でも、空白や改行があると結果は変わります。
空白を除いた文字数の計算
続いては、スペースを除外して実質的な文字数を求める方法を確認していきます。
| A | B | C |
|---|---|---|
| 1 | 氏名 | 空白を除く文字数 |
| 2 | 山田 太郎 | 4 |
| 3 | 佐藤 花子 | 4 |
氏名や商品名では、区切りのためのスペースを文字数に含めたくないケースがあります。
この場合はSUBSTITUTE関数で空白を削除した文字列を作り、その結果をLEN関数で数えます。
=LEN(SUBSTITUTE(B2,” “,””))
この数式は、B2セルにある半角スペースを空欄へ置き換えてから、残った文字数を計算します。
SUBSTITUTE関数は、指定した文字を別の文字へ置き換える関数です。
半角スペースを除外する数式
まずは、半角スペースだけを除外する場合について解説していきます。
=LEN(SUBSTITUTE(B2,” “,””))の中央にある” “は、半角スペースを表しています。
置換後の文字列として””を指定しているため、半角スペースは何もない状態へ置き換えられます。
たとえばB2セルが東京 Officeであれば、通常のLEN関数では8文字として数えられます。
一方で上記の数式なら、間の半角スペースを取り除いた7文字が返ります。
英単語の間隔や、コードの区切りとして半角スペースが使われている一覧で役立つ計算です。

数式をC2セルへ入力してから、必要な行までオートフィルでコピーしましょう。
半角スペースと全角スペースは別の文字なので、同じ数式だけでは両方を削除できません。
【操作のポイント】半角スペースを消す数式では、引用符の間に半角の空白を1つ入力します。
全角スペースも除外する数式

続いては、全角スペースを含むデータの文字数を確認していきます。
日本語入力では、氏名の間に全角スペースが入っていることがあります。
全角スペースも除外したい場合は、半角スペースを削除するSUBSTITUTE関数の外側に、もう一つSUBSTITUTE関数を重ねます。
=LEN(SUBSTITUTE(SUBSTITUTE(B2,” “,””),” ”,””))
後半の” ”には全角スペースが入っています。
この数式では最初に半角スペースを削除し、次に全角スペースも削除したうえで文字数を数えます。
名簿を複数人から集めた場合は、スペースの種類が統一されていないことも珍しくありません。
表示だけでは空白の種類を判別しにくいため、両方を除外する数式が実務では安全です。
【操作のポイント】全角スペースは日本語入力モードで入力し、半角スペースと区別して指定します。
不要な連続空白を整えるTRIM関数
続いては、余分な空白を整理してから文字数を数える方法を確認していきます。
コピーしたデータには、先頭や末尾の空白、単語間に連続した半角スペースが含まれている場合があります。
TRIM関数は、先頭と末尾の半角スペースを削除し、途中で連続する半角スペースを1つに整える関数です。
=LEN(TRIM(B2))
この数式を使うと、意図しない余分な半角スペースによる文字数のずれを減らせます。
ただしTRIM関数は全角スペースを削除する関数ではありません。
全角スペースも処理したい場合は、SUBSTITUTE関数で全角スペースを半角スペースへ置き換えた後にTRIM関数を使う方法があります。
データを整えてから集計すると、検索、重複判定、並べ替えの精度も上がります。
【操作のポイント】TRIM関数は半角スペース向けの関数であり、全角スペースは別途処理します。
単語数を数える数式
続いては、英語の文章やキーワードに含まれる単語数を数える方法を確認していきます。
| A | B | C |
|---|---|---|
| 1 | 英文 | 単語数 |
| 2 | Excel makes work easier | 4 |
| 3 | Count words with formulas | 4 |
英語の文章では、一般に単語と単語の間が半角スペースで区切られています。
そのため、文字列の長さから半角スペースを除いた後の長さを引くことで、スペースの個数を求められます。
スペースの数に1を足せば、単語数を計算できます。
=LEN(TRIM(B2))-LEN(SUBSTITUTE(TRIM(B2),” “,””))+1
この数式は、先頭と末尾の余分なスペースをTRIM関数で整えた後、空白の数を利用して単語数を返します。
空白の個数から単語数を求める仕組み
それでは、単語数の数式が計算される仕組みについて解説していきます。
英文がExcel makes work easierの場合、単語は4個であり、単語間の半角スペースは3個です。
LEN(TRIM(B2))は、前後の余分な空白を除いた英文全体の文字数を求めます。
SUBSTITUTE(TRIM(B2),” “,””)は、英文からすべての半角スペースを取り除きます。
両者の文字数の差は削除された半角スペースの数、つまり3になります。
最後に+1を加えることで、スペースで区切られた単語の数である4が求められます。
単語がn個ある英文では、通常は区切りのスペースがn-1個あります。
【操作のポイント】この数式は単語が半角スペースで区切られている英文やキーワードに適しています。
空白セルでエラーを防ぐIF関数
続いては、入力がないセルで単語数を計算する際の対処法を確認していきます。
元のB2セルが空白の場合、単純な単語数の数式では、空白の個数が0でも+1が実行されるため1と表示されます。
未入力セルには何も表示したくない場合、IF関数を追加します。
=IF(B2=””,””,LEN(TRIM(B2))-LEN(SUBSTITUTE(TRIM(B2),” “,””))+1)
この数式では、B2が空欄なら空欄を返し、入力があるときだけ単語数の計算を行います。
文字数一覧を作るときに、未入力行へ不要な数字が並ぶことを防げます。
IF関数を組み込むと、完成前の表でも見やすい状態を保ちやすくなります。
【操作のポイント】空欄判定の””は、何も入力されていない状態を意味します。
日本語文章の語数を扱う注意点
続いては、日本語の文章で単語数を扱う場合の注意点を確認していきます。
日本語は英語のようにすべての単語が空白で区切られる言語ではありません。
たとえばエクセルで文字数を数えるという文には複数の語がありますが、半角スペースは含まれていません。
そのため、空白の数を利用する数式では日本語の意味上の単語数を正確に判定できません。
日本語の語数を厳密に分析するには、形態素解析に対応した外部ツールや専用のサービスを使う必要があります。
Excelでは、文字数、句読点の数、指定語句の出現回数など、表形式で扱いやすい集計を行うのが実用的です。
【操作のポイント】日本語では空白区切りの数式を単語数ではなく、区切り数の確認用として考えましょう。
特定文字の出現回数を数える方法
続いては、特定の文字や記号がセル内に何回登場するかを確認していきます。
| A | B | C |
|---|---|---|
| 1 | メールアドレス | @の個数 |
| 2 | info@example.com | 1 |
| 3 | sales@example.com | 1 |
特定の記号の数を調べる方法は、メールアドレスの形式確認、区切り記号の確認、キーワードの出現数集計などに活用できます。
=LEN(B2)-LEN(SUBSTITUTE(B2,”@”,””))
この数式では、元の文字列から@を削除した後の文字数を引くことで、@の出現回数を求めます。
SUBSTITUTE関数を使った出現回数
それでは、特定文字を数える計算式について解説していきます。
元の文字数から、指定文字を削除した後の文字数を引く考え方は、空白の個数を数える場合と同じです。
たとえばB2セルにあいうあいという文字列があり、あの個数を数えるなら次の数式を使います。
=LEN(B2)-LEN(SUBSTITUTE(B2,”あ”,””))
あをすべて削除すると、文字数は2文字減ります。
元の文字数との差も2になるため、あは2回出現していると分かります。
検索したい文字を引用符の間に入力するだけで、さまざまな文字や記号を対象にできます。
【操作のポイント】数えたい文字が全角か半角かを、元データと同じ表記で指定します。
複数文字の出現回数
続いては、二文字以上の語句が何回現れるかを数える方法を確認していきます。
たとえば説明文の中にExcelという語が何回登場するかを調べたい場合も、基本の考え方は同じです。
ただし削除される文字数は語句の長さに応じて増えるため、LEN関数で対象語句の文字数を割る必要があります。
=(LEN(B2)-LEN(SUBSTITUTE(B2,”Excel”,””)))/LEN(“Excel”)
Excelは5文字なので、文字数の差を5で割ることで出現回数が求められます。
英字は通常、大文字と小文字が区別されずに置換されます。
大文字と小文字を区別して数えたい場合は、SUBSTITUTE関数だけではなく、より詳細な判定方法を検討しましょう。
【操作のポイント】複数文字を数える場合は、削除された文字数を対象語句の文字数で割ります。
入力内容の形式チェック
続いては、出現回数を使った入力内容の確認方法を解説していきます。
メールアドレスでは、一般的に@が1つ含まれる形式が想定されます。
C2セルに@の個数を表示し、別の列で1かどうかを判定すると、明らかな入力ミスを見つけやすくなります。
=IF(C2=1,”確認済み”,”要確認”)
この判定だけでメールアドレスの正しさを保証することはできません。
しかし、@がない、または複数あるデータを抽出する一次チェックとしては有効です。
関数による形式チェックは、入力直後ではなくデータを受け取った後の確認作業にも役立ちます。
【操作のポイント】判定用の列を分けると、元データを変更せずに確認結果を管理できます。
文字数制限と条件付き書式の設定
続いては、文字数が上限を超えたセルを見つけやすくする方法を確認していきます。
| A | B | C |
|---|---|---|
| 1 | 説明文 | 文字数判定 |
| 2 | 新商品の特徴を分かりやすく紹介します | OK |
| 3 | 期間限定キャンペーンの詳細をご案内します | 超過 |
商品登録、SNS投稿文、広告見出し、フォーム入力などでは、文字数の上限が決められていることがあります。
LEN関数とIF関数を組み合わせると、上限を超えたデータを文字で知らせることができます。
=IF(LEN(B2)<=30,”OK”,”超過”)
この数式は、B2セルの文字数が30文字以下ならOK、31文字以上なら超過と表示します。
上限文字数を判定するIF関数
それでは、文字数制限をセルで判定する方法を解説していきます。
=IF(LEN(B2)<=30,”OK”,”超過”)では、LEN(B2)の結果と30を比較しています。
<=は以下を意味する比較演算子であり、30以下なら条件が成立します。
上限を変更したいときは、数式内の30を希望する文字数へ変更するだけです。
残り文字数も表示したい場合は、上限からLEN関数の結果を引きます。
=30-LEN(B2)
結果が正の数なら入力できる残り文字数であり、負の数なら超過した文字数を表します。
判定結果と残り文字数を並べると、修正が必要なセルを優先的に処理できます。
【操作のポイント】文字数上限が変わる可能性がある場合は、上限値を別セルに入力して参照すると管理しやすくなります。
条件付き書式による超過セルの強調
続いては、上限を超えたセルを色で目立たせる方法を確認していきます。
文字数判定の列を作らなくても、条件付き書式を使えば対象セルの背景色や文字色を自動変更できます。
まず文字数を確認したい範囲としてB2からB100などを選択します。
ホームタブの条件付き書式から新しいルールを選び、数式を使用して書式設定するセルを決定します。
数式入力欄には=LEN(B2)>30を入力します。
書式ボタンから塗りつぶしを淡い赤色などに設定して確定すると、31文字以上のセルだけが強調表示されます。
条件付き書式は元の入力内容を変更せず、注意が必要なデータだけを視覚化できる機能です。
【操作のポイント】数式のB2は、選択範囲の左上セルに合わせて入力します。
データの入力規則による文字数制限
続いては、文字数を超える入力そのものを抑える方法を確認していきます。
入力前から上限を守らせたい場合は、データの入力規則を利用します。
対象セルを選択し、データタブのデータの入力規則を開きます。
設定の入力値の種類でユーザー設定を選び、数式欄へ=LEN(B2)<=30と入力します。
エラーメッセージのタブでは、30文字以内で入力してくださいなど、利用者に分かりやすい文章を設定できます。
ただし貼り付け操作では想定どおりに制限できない場合もあるため、重要なデータでは条件付き書式や判定列も併用するとよいでしょう。
【操作のポイント】入力規則は入力を防ぐ仕組みであり、既に存在する超過データの修正には別途確認が必要です。
まとめ エクセルで文字の数を数える方法(単語数・文字数をカウントする関数)
エクセルで文字の数を数える基本は、=LEN(B2)のようにLEN関数を使う方法です。
LEN関数は文字、数字、記号、半角スペース、全角スペース、改行などを含めて文字数を返します。
空白を除外したい場合は、SUBSTITUTE関数で対象の空白を削除してからLEN関数で数えます。
半角スペースと全角スペースは別文字なので、必要に応じて両方を処理することが重要です。
英語の単語数は、TRIM関数で余分な空白を整え、文字数の差からスペース数を求めることで計算できます。
特定の文字や語句の出現回数も、SUBSTITUTE関数で削除前後の文字数を比べる方法で求められます。
さらにIF関数、条件付き書式、データの入力規則を組み合わせれば、文字数上限の判定や入力ミスの発見にも活用できます。
目的に応じて数える対象を明確にし、文字数、空白、単語、記号を適切に区別しながらExcelの関数を使い分けましょう。