スプレッドシートで文字数をカウントしたいけれど、意図せずスペースや改行まで含まれてしまって困ったことはありませんか?複数セルの文字数を一気に計算したり、特定の関数を使って空白を除外したりと、用途に合わせて思い通りに特定の文字を抽出できたら便利ですよね。私もスプレッドシートを触る中で、なかなか思い通りの文字数にならずに悩んだ経験があります。この記事では、そんなお悩みを解決するための実践的なテクニックをまとめてみました。

- 基本的な関数を使った文字数の出し方
- 改行や空白を含めずに純粋な文字数を測る方法
- 複数のセルにまたがる文字数を一括で集計するテクニック
- 条件付き書式を使って文字数制限を管理する応用術
スプレッドシートの文字数をカウントする基礎
スプレッドシートで文字数を数えるといっても、単純に全体の長さを測るだけではなく、状況に応じたさまざまな手法が存在します。ここでは、最も基本となる関数の使い方から、全角や半角の扱い方、さらには不要なスペースや改行を取り除いて純粋な文字だけをカウントするテクニックまで、基礎的な部分をしっかり解説していきますね。
LEN関数で文字数を正確に把握する
スプレッドシートで文字数を数える際に、最も基本となるのがLEN(レン)関数です。この関数は、指定したセルに入力されているテキストの文字数をそのまま数値として返してくれます。
使い方はとてもシンプルで、文字数を調べたいセルがA1だとしたら、別のセルに =LEN(A1) と入力するだけです。これで瞬時に文字数が表示されます。LEN関数は、日本語のひらがなや漢字、半角のアルファベット、数字、さらには記号まで、すべて平等に「1文字」としてカウントしてくれるのが特徴ですね。
- 構文:=LEN(テキストまたはセル参照)
- 全角文字も半角文字も1文字として数える
ブログ記事の執筆や、SNSの投稿文作成などで、文字の種類を問わず単純にボリュームを知りたい場合にとても役立つ関数かなと思います。
LENB関数によるバイト数計算の注意点
文字数そのものではなく、データ量としての「バイト数」で文字を評価したい場合は、LENB(レンビー)関数を使用します。古いシステムへのデータ移行や、一部のウェブサービスでの入力制限など、バイト数での管理が求められる場面で使われますね。
LENB関数は基本的に、半角文字を「1バイト」、全角文字を「2バイト」として計算します。例えば「りんご」なら全角3文字なので6バイト、「Apple」なら半角5文字なので5バイトといった具合です。
注意点:Googleスプレッドシート特有の仕様
Excelなどでは半角カタカナは1バイトとして扱われますが、GoogleスプレッドシートのLENB関数では、半角カタカナ(半角濁点・半濁点を含む)も「2バイト」として計算されるという特有の仕様があります。
もしExcelとスプレッドシートを併用している環境なら、この仕様の違いで文字数エラーが起きる可能性があるので、システム連携の際などは十分に気をつけてくださいね。
空白を除外して純粋な文字数を出す方法
他からテキストをコピーしてきたときなど、単語の前後や途中に不要な空白(スペース)が混じっていることがあります。LEN関数は空白も1文字として数えてしまうため、純粋な文字数だけを知りたい場合は、空白を除外する処理が必要になります。
前後の空白を消すTRIM関数
文字列の先頭や末尾に入ってしまった空白を取り除くには、TRIM関数が便利です。=LEN(TRIM(A1)) のようにLEN関数の中にネスト(入れ子)して使うことで、前後の空白を無視した文字数を測ることができます。
すべての空白を消すSUBSTITUTE関数
文字と文字の間にある空白も含めて、とにかくすべてのスペースを除外したい場合は、SUBSTITUTE関数を使います。この関数は特定の文字を別の文字に置き換えることができるので、これを利用して空白を「何もない状態」に変換します。
半角スペースを完全に除外してカウントする数式
=LEN(SUBSTITUTE(A1, " ", ""))
全角スペースと半角スペースの両方が混在している場合は、SUBSTITUTE関数を二重に使って両方とも除外してあげるのが確実かなと思います。
セル内の改行を除外して文字数を測る
見栄えを良くするためにセル内で改行(WindowsならAlt+Enter、MacならOption+return)を使うことも多いですよね。しかし、スプレッドシートはこの改行コード自体も「1文字」としてカウントしてしまいます。
改行を文字数から除外したい場合も、先ほどのSUBSTITUTE関数が大活躍します。スプレッドシート内では、改行は CHAR(10) という特殊なコードで表されます。
改行を除外してカウントする数式
=LEN(SUBSTITUTE(A1, CHAR(10), ""))
この数式を使えば、セル内のすべての改行を一旦なくして、1行の繋がった文字列としてから文字数を測ってくれるので、純粋なテキスト量だけを正確に把握することができます。
複数セルの合計文字数を一括で集計する
指定した列のすべて、あるいは複数のセルにまたがって入力されている文章の合計文字数を知りたい場面もあると思います。一つひとつのセルにLEN関数を使ってから合計を出すのも手ですが、データが多いと面倒ですよね。
そんな時は、SUM関数とARRAYFORMULA関数を組み合わせることで、一瞬で一括集計が可能です。
| 目的 | 使用する数式 |
|---|---|
| A2からA列の最後までの全文字数を合計する | =SUM(ARRAYFORMULA(LEN(A2:A))) |
ARRAYFORMULA関数は、範囲内のセルすべてに対して背後で一気にLEN関数を実行してくれるという強力な機能を持っています。そこにSUM関数を被せることで、それぞれの文字数の合算値を1つのセルに出力できるわけです。行が新しく追加されても自動で計算してくれるので、シートがとてもすっきりしますよ。
スプレッドシートの文字数カウント応用手法

基礎的なカウント方法をマスターしたら、次は実務で役立つ少し高度なテクニックにも挑戦してみましょう。ここでは、スプレッドシートで文字数をカウントする機能と他の関数や設定を組み合わせて、特定文字の出現回数を調べたり、入力エラーを未然に防いだりする便利な応用手法をご紹介しますね。
特定文字を抽出して出現回数を分析する
ブログのSEO対策などで、「特定のキーワードが記事内に何回使われているか」をチェックしたいときがありますよね。スプレッドシートには直接その回数を数える関数はないのですが、LEN関数とSUBSTITUTE関数を組み合わせることで実現できます。
基本的な考え方としては、「元の文章の文字数」から「特定のキーワードを削除した文章の文字数」を引き算し、それを「特定のキーワード自体の文字数」で割る、という算数のようなロジックを使います。
「apple」という単語の出現回数を調べる数式の例
=(LEN(A1) - LEN(SUBSTITUTE(A1, "apple", ""))) / LEN("apple")
このテクニックを覚えておくと、外部のツールに頼らなくても、自分のシート上でサクッとキーワードの出現頻度を分析できるようになるのでとてもおすすめかなと思います。
日付や数値の文字数エラーを回避する
LEN関数を使う上でつまずきやすいのが、「日付」や「時刻」が入力されたセルの文字数を測るときです。例えば「2023/10/01」は見た目上は10文字ですが、LEN関数を通すと全く違う数値が返ってくることがあります。
これは、スプレッドシートが日付を「シリアル値」という内部的な連続した数値として管理しているためです。見た目の表示形式ではなく、裏側にあるシリアル値の桁数を数えてしまうんですね。
TEXT関数で文字列に変換する
これを回避するには、TEXT関数を使って、日付データを強制的に指定したフォーマットの「文字列」に変換してからカウントします。
=LEN(TEXT(A1, "yyyy/mm/dd")) のように記述すれば、裏側がどんなシリアル値であっても、必ず「2023/10/01」というテキストとして扱われるため、安定して「10」という文字数を取得できるようになります。
空白セルにエラーを出さない条件分岐
複数のセルに一括で文字数カウントの関数を適用していると、まだデータが入力されていない空白のセルに対して「0」と表示されたり、エラーが出てしまったりすることがあります。これだとシートが見づらくなってしまいますよね。
こんなときは、IF関数を使って「セルに文字が入力されている場合だけ計算する」という条件分岐を作るのがスマートです。
エラーを出さないためのIF関数の使い方
=IF(A1<>"", LEN(A1), "")
この数式では、「もしA1セルが空白でなければ(<>””)、文字数を計算する。空白であれば、何も表示しない(””)」という処理を行っています。エラーを未然に防ぎ、見た目も美しいシートを保つためのちょっとしたコツですね。
条件付き書式で文字数超過をアラートする
文字数制限があるキャッチコピーやタイトルを考えているときに、オーバーしたらパッと見てわかるようにしたいですよね。そんな時は、スプレッドシートの条件付き書式とLEN関数を組み合わせると便利です。
例えば「30文字を超えたらセルの色を赤くする」といった設定が可能です。設定方法は以下の通りです。
- 対象のセルや列を選択する
- メニューの「表示形式」から「条件付き書式」を選ぶ
- ルールの種類で「カスタム数式」を選択する
- 入力欄に
=LEN(A1)>30と入力する(A1は対象のセル) - 書式設定のスタイルで背景色を赤にする
こうしておけば、入力中に文字数をオーバーした瞬間に色がパッと変わるので、文字数チェックの漏れをなくすことができます。チームでシートを共有して作業する際にも、ルールの徹底に役立つかなと思います。
スプレッドシートの文字数カウントまとめ
今回は、スプレッドシートで文字数をカウントするためのさまざまな手法をご紹介しました。単に長さを測るだけでなく、全角や半角の区別、スペースや改行の除外、複数セルの集計など、目的に合わせて関数を使い分けることで、より効率的に作業が進められるはずです。
LEN関数を基本としつつ、必要に応じてSUBSTITUTE関数やTEXT関数などを組み合わせて、ご自身の使いやすいようにカスタマイズしてみてくださいね。ただし、各種関数の仕様やバイト数の計算ルールは、アップデートによって細かな変更が加わる可能性もあります。本記事で紹介した数値データや計算結果はあくまで一般的な目安として捉え、正確な情報は公式サイトをご確認ください。また、複雑なシステム構築などに活用する際の最終的な判断は専門家にご相談ください。
文字数の管理を自動化して、よりクリエイティブな作業に時間を使っていきましょう!

