エクセルでセル内の文字数を数えたい、特定の文字が何個含まれているかを調べたい、あるいはシート全体の文字数を集計したいと思ったことはありませんか?
この記事では【Excel】エクセルでセル内の文字数をカウント(関数:半角:空白:シート全体)する方法について解説していきます。
ポイントは
・LEN関数で文字数をカウント
・LENB関数で半角全角を区別
・SUBSTITUTE関数で特定文字をカウント
です。
それでは詳しく見ていきましょう。
エクセルでセル内の文字数をカウントする方法1【LEN関数で基本的なカウント】
セル内の文字数を数える最も基本的な方法は、LEN関数を使用することです。
LEN関数は、指定したセルに含まれる文字数を返してくれます。
この関数では、全角文字も半角文字も1文字として数えられるため、純粋な文字数を知りたい場合に最適な方法といえるでしょう。
基本的な使用方法
例えば、A列に様々なテキストが入力されていて、B列に文字数を表示したい場合を考えてみましょう。

B2セルに以下の数式を入力します。
=LEN(A2)

この数式をB3以降のセルにコピーすれば、各セルの文字数が表示されます。
「こんにちは」なら5文字、「Hello World」なら11文字(スペースも1文字としてカウント)と表示されるでしょう。

LEN関数は、アルファベット、数字、ひらがな、カタカナ、漢字、記号、スペースなど、すべての文字を1文字として数えます。
空白(スペース)を含む文字数カウント
LEN関数は、セル内の空白スペースも1文字として数えます。
そのため、「こんにちは ありがとう」のように間にスペースが入っている場合、スペースも含めた文字数が返されます。
空白を除いた文字数を知りたい場合は、SUBSTITUTE関数と組み合わせる方法が効果的です。
=LEN(SUBSTITUTE(A2,” “,””))

SUBSTITUTE関数は、指定した文字列を別の文字列に置き換える関数です。
この数式では、スペース(” “)を空文字(“”)に置き換えることで、スペースを削除してから文字数をカウントしています。

全角スペースも除外したい場合は、次のように記述します。
=LEN(SUBSTITUTE(SUBSTITUTE(A2,” “,””),” ”,””))
内側のSUBSTITUTE関数で半角スペースを削除し、外側のSUBSTITUTE関数で全角スペースを削除してから文字数を数える仕組みです。
【ポイント】LEN関数は全角半角を区別せずに文字数をカウントします。空白を含めるか除外するかは、SUBSTITUTE関数との組み合わせで制御できます。純粋な文字数を知りたい場合は、LEN関数が最も適した選択肢です。
エクセルでセル内の文字数をカウントする方法2【LENB関数で半角全角を区別】
半角文字と全角文字を区別して文字数をカウントしたい場合は、LENB関数を使用します。
LENB関数は、バイト数をカウントする関数で、半角文字を1バイト、全角文字を2バイトとして数えます。
この特性を利用すれば、半角文字と全角文字が混在しているテキストのバイト数を正確に把握できるでしょう。
LENB関数の基本的な使い方
LENB関数の使い方はLEN関数と同じです。
=LENB(A2)


例えば「こんにちは」は全角5文字なので10バイト、「Hello」は半角5文字なので5バイトと表示されます。
「こんにちはHello」のように全角半角が混在している場合は、全角5文字(10バイト)+半角5文字(5バイト)=15バイトとなります。
半角文字数と全角文字数を個別にカウント
LEN関数とLENB関数を組み合わせることで、半角文字数と全角文字数を個別に求めることができます。
全角文字数を求める数式は次の通りです。
=LENB(A2)-LEN(A2)

この数式の仕組みを説明しましょう。
LENB関数で得られるバイト数から、LEN関数で得られる文字数を引くと、全角文字の数が求められます。
例えば「こんにちはHello」の場合、LENB(A2)は15バイト、LEN(A2)は10文字なので、15-10=5となり、全角文字が5文字あることが分かります。

半角文字数を求める数式は次のようになります。
=LEN(A2)*2-LENB(A2)
この数式は、すべてが全角だった場合のバイト数(LEN(A2)*2)から実際のバイト数(LENB(A2))を引くことで、半角文字数を算出しています。
データ容量の確認に活用
LENB関数は、データベースやシステムへの入力制限を確認する際にも役立ちます。
システムによっては、バイト数で入力制限が設定されている場合があります。
例えば、100バイト以内という制限がある場合、LENB関数で確認すれば入力可能かどうかが判断できるでしょう。
条件付き書式と組み合わせて、バイト数が制限を超えた場合に警告を表示することも可能です。
【ポイント】LENB関数はバイト数でカウントするため、半角全角を区別したい場合や、データ容量を確認したい場合に便利です。LEN関数との組み合わせで、半角文字数と全角文字数を個別に集計することもできます。
エクセルでセル内の文字数をカウントする方法3【特定の文字をカウント】
セル内に特定の文字が何個含まれているかをカウントしたい場合があります。
例えば、文章内に「の」という文字が何回出てくるか、電話番号の中にハイフンが何個あるかなどを調べたいケースです。
この場合は、SUBSTITUTE関数とLEN関数を組み合わせることで実現できます。
特定文字のカウント方法
特定の文字をカウントする基本的な数式は次の通りです。
=(LEN(A2)-LEN(SUBSTITUTE(A2,”の”,””)))/LEN(“の”)
この数式の仕組みを説明しましょう。
まず、SUBSTITUTE関数で「の」を削除した文字列の長さを求めます。
元の文字列の長さから、「の」を削除した文字列の長さを引けば、削除された文字数、つまり「の」の個数が分かります。
最後にLEN(“の”)で割ることで、複数文字の文字列をカウントする場合にも対応できるようにしています。
単一文字の場合は、最後の割り算は省略可能です。
=LEN(A2)-LEN(SUBSTITUTE(A2,”の”,””))
この数式でも「の」の個数を正確にカウントできます。
複数文字の文字列をカウント
「です」や「ます」のような複数文字の文字列をカウントする場合も、同じ方法が使えます。
=(LEN(A2)-LEN(SUBSTITUTE(A2,”です”,””)))/LEN(“です”)
この数式で、セル内に「です」が何回出現するかをカウントできるでしょう。
大文字小文字を区別しないカウント
英字をカウントする場合、大文字小文字を区別せずにカウントしたいケースもあります。
この場合は、UPPER関数やLOWER関数と組み合わせます。
=LEN(A2)-LEN(SUBSTITUTE(UPPER(A2),”A”,””))
UPPER関数でセル内の文字列をすべて大文字に変換してから、”A”をカウントすることで、”a”も”A”も含めてカウントできます。
【ポイント】SUBSTITUTE関数とLEN関数を組み合わせることで、特定の文字や文字列の出現回数をカウントできます。この方法は、文章の分析やデータの検証など、様々な場面で活用できる便利なテクニックです。
エクセルでセル内の文字数をカウントする方法4【シート全体の文字数を集計】
複数のセルの文字数を合計して、シート全体やある範囲の総文字数を知りたい場合があります。
レポートの文字数制限を確認したり、データ量を把握したりする際に便利な方法です。
SUM関数とLEN関数を組み合わせることで、簡単に実現できるでしょう。
範囲内の総文字数を求める
複数セルの文字数を合計する場合は、配列数式を使用します。
Excel 2021やMicrosoft 365では、次のように記述するだけで自動的に配列数式として認識されます。
=SUM(LEN(A2:A10))

この数式で、A2からA10までの各セルの文字数を合計した値が表示されます。
古いバージョンのExcelでは、Ctrl+Shift+Enterキーを同時に押して配列数式として確定する必要がありました。
空白セルを除外してカウント
範囲内に空白セルが含まれている場合、エラーを避けるためにSUMPRODUCT関数を使用する方法もあります。
=SUMPRODUCT(LEN(A2:A10))
SUMPRODUCT関数を使用すると、空白セルは0として扱われるため、エラーが発生しません。
条件を満たすセルの文字数だけを集計
特定の条件を満たすセルの文字数だけを集計したい場合は、SUMIF関数との組み合わせが必要になります。
ただし、SUMIF関数は直接LEN関数と組み合わせることができないため、作業列を使用する方法が一般的です。
まず、B列に各セルの文字数を表示します。
=LEN(A2)

次に、C列でSUMIF関数を使って条件に合う文字数を合計します。
例えば、文字数が10文字以上のセルだけを集計する場合は次のようになります。
=SUMIF(B2:B10,”>=10″,B2:B10)

【ポイント】SUM関数やSUMPRODUCT関数とLEN関数を組み合わせることで、複数セルの総文字数を簡単に集計できます。レポート作成やデータ分析など、文字数管理が必要な場面で活躍する機能です。
まとめ エクセルでセル内の文字数をカウントする方法(関数・半角・空白・シート全体)
エクセルでセル内の文字数をカウントする方法をまとめると
・LEN関数による基本カウント:「=LEN(A2)」で全角半角を区別せずに文字数をカウント。SUBSTITUTE関数と組み合わせて空白を除外することも可能
・LENB関数で半角全角を区別:「=LENB(A2)」でバイト数をカウント。LEN関数との組み合わせで半角文字数と全角文字数を個別に算出
・特定文字のカウント:「=LEN(A2)-LEN(SUBSTITUTE(A2,”の”,””))」で特定の文字や文字列の出現回数をカウント
・シート全体の集計:「=SUM(LEN(A2:A10))」または「=SUMPRODUCT(LEN(A2:A10))」で複数セルの総文字数を集計
これらの方法を状況に応じて使い分けることで、様々な文字数カウントのニーズに対応できます。
LEN関数は最も基本的で使いやすい方法ですし、LENB関数はデータ容量の管理に便利です。
特定文字のカウントは文章分析に役立ち、範囲全体の集計はレポート作成時の文字数管理に効果的でしょう。
用途に応じてこれらの関数を組み合わせることで、効率的な文字数管理が実現できます。
エクセルの文字数カウント機能を活用して、データ管理や文書作成の効率を高めていきましょう!

コメント