この記事では、Excel(エクセル)のLEN関数について解説します。
LEN関数の読み方は「レン(関数)」で、英語の「LENGTH(=長さ)」に由来します。
LEN関数は、指定したセル内の文字数をカウントできる関数です。応用的な使い方の例では、文字数の制限がある場合にLEN関数を用いて文字数を判定することで、文字数制限を遵守することができます。
LEN関数の基本的な使い方や気をつけたいポイント、応用的な活用例などについて解説していますので、ぜひ参考にしてください。
目次
LEN関数とは?
Excel(エクセル)のLEN関数とは、セル内にある文字の数を数える関数です。例えばセルに「エクセルのLEN関数」と入力されていた場合、文字数は「10」と表示されます。スペースが入った空白や改行も文字数にカウントされます。
後半でも紹介しますが、LEN関数を他の関数と組み合わせて特定の文字列を抽出したり、文字数制限チェックをしたりすることが可能です。
LEN関数とLENB関数の違い
LEN関数に似た関数でLENB(レンビー)関数があります。LENB関数は指定したセル内の文字列のバイト数を返す関数です。例えばA1セルに「エクセルのLEN関数」と入力されていた場合、バイト数は「17」と表示されます。
全角文字は1文字2バイトとしてカウントされるため、先ほどのLEN関数の「10」という結果と異なります。バイト数をカウントしたい場合はLENB関数を使いましょう。
LEN関数の書式
LEN関数の書式は「=LEN(文字列)」です。引数は1つのみで非常にシンプルな構造となっているので使いやすいでしょう。
文字数を調べたい文字列を引数に直接入力する場合は、画像のようにダブルクォーテーション「”」で囲んで指定します。
セルに入力された文字列の文字数を調べる場合には、画像のように引数の中にセルを指定してセル参照をしてください。
LEN関数の使い方|文字数を数える方法
LEN関数の具体的な使い方を見ていきましょう。〇〇字以内という文字数制限がある課題に対し、エクセルに入力された文字数をチェックできるようにします。
A3セルに課題の文字を入力するとします。この場合B2セルに「=LEN(A3)」と入力してください。これでA3に入力されている文字数がB2セルに自動で表示されます。
LEN関数に関する注意点
LEN関数を使用する上で、よくやってしまいがちなミスを2つ紹介します。文字数のカウントがうまくいかない時は、ここで紹介されている間違いを犯していないか確認してみてください。
- 引数に文字列を入力する場合はダブルクォーテーション(””)を忘れない
- 書式は無視して文字数がカウントされることに注意
引数に文字列を入力する場合はダブルクォーテーション(””)を忘れない
まずはLEN関数の引数に文字列を直接入力する場合に発生しやすいミスを紹介します。直接文字列を指定する時、引数内の文字列はダブルクォーテーション「”」で囲う必要があります。
セル参照でセルを指定する時にはダブルクォーテーション「”」は不要ですので覚えておきましょう。
書式は無視して文字数がカウントされることに注意
Excel(エクセル)では書式設定で「¥」や「kg」などの単位を表示させることができます。この場合単位は表示されますが、セルの中身はあくまで入力した数字のみとなります。
例えばセルに「1000円」と表示されていても、この「円」が書式設定によって表示されている場合、LEN関数は書式を無視して文字数をカウントします。つまり「円」は文字としてカウントされません。
また日付と時刻についてはシリアル値の文字数がカウントされます。外観通りの文字数とならないため注意しましょう。
LEN関数で文字数が違う場合のチェックポイント
LEN関数で見た目の文字数と結果が異なる場合のチェックポイントをまとめました。
- ①スペースが入った空白や改行が挿入されている
- ②書式設定による文字(単位)が表示されている
- ③日付や時刻などシリアル値を扱う書式となっている
これらの場合は、手動でカウントした数とLEN関数で取得した結果が違うということが起こり得ます。
①LEN関数ではスペースが入った空白や改行もカウントされます。
②また書式設定による文字(単位)はカウントされません。
③日付や時刻はシリアル値の文字数でカウントされます。
このようにLEN関数の文字数がおかしい時に気を付けたいポイントが複数あるので、ぜひ覚えておきましょう。
LEN関数と他の関数を組み合わせた使い方【応用例】
LEN関数は単独でも使用できますが、他の関数と組み合わせて使うことでより高度な仕組みをつくることが可能です。ここでは具体的な関数との組み合わせ方を学んでいきます。
- SUM関数と組み合わせて複数セル内の文字数をカウント
- RIGHT関数、FIND関数と組み合わせて特定の文字列を抽出
- IF関数と組み合わせて文字数制限を遵守しているかチェック
- SUBSTITUTE関数と組み合わせて改行の数をカウント
SUM関数と組み合わせて複数セル内の文字数をカウント
まずは数値の合計を求めるSUM関数と組み合わせて、複数セル内の文字数の合計をカウントしてみましょう。
カウントしたい文字列があるセルの隣に「=LEN(対象セル)」と入力し、残りのセルもオートフィルで関数を入力します。
それぞれのカウント結果をSUM関数で合計すると、全てのセルの文字数を合計したカウント結果が表示されます。
SUM関数とLEN関数を「=SUM(LEN(B3:B8))」というように、一つの式にまとめて記述することも可能です。
RIGHT関数、FIND関数と組み合わせて特定の文字列を抽出
RIGHT関数とFIND関数とを組み合わせて特定の文字列を抽出するのもよく使用されるテクニックです。
例えば「エクセルー入門編」というタイトルから「ー」以降の文字を抜き出してみましょう。
RIGHT関数で、任意の文字数分だけ右から文字を抜き出します。「ー」の後に続く文字列の文字数はLEN関数とFIND関数を組み合わせて「LEN(B2)-FIND(“ー”,B2,1)」となるので「=RIGHT(B2,LEN(B2)-FIND(“ー”,B2,1))」とすれば「ー」以降の文字列を抽出することができます。
IF関数と組み合わせて文字数制限を遵守しているかチェック
IF関数と組み合わせると、文字数制限が守られているかを判定することができます。設定した文字数以内であれば「OK」、文字数オーバーの場合は「NG」と表示される仕組みをつくってみましょう。
判定結果の欄に「=IF(LEN(B3)<=10,”OK”,”NG”)」と入力しましょう。例では10字以内という指定があるので10字より多くなった場合は「NG」と表示されます。
SUBSTITUTE関数と組み合わせて改行の数をカウント
最後にSUBSTITUTE関数と組み合わせて改行の数をカウントしてみましょう。改行前の文字数と改行を削除した後の文字数の差を利用します。
具体的な式は「=LEN(A1) – LEN(SUBSTITUTE(A1, CHAR(10), ””))」
となります。SUBSTITUTE関数を使用し、改行の文字コードをスペースなしの空白に置換(つまり改行を削除)して全体の文字数をカウントし、それをもとの文字数から引きます。
これで改行の数を知ることができます。
LEN関数の使い方についておさらい
LEN関数の基本的な使い方から応用的なテクニックまで幅広く紹介しました。LEN関数は単独で使うことは多くありませんが、他の関数と組み合わせることで様々な文字列操作が可能になります。
この記事で紹介したSUM関数やRIGHT関数、FIND関数やSUBSTITUTE関数とうまく連携させて、作業効率を高めましょう。
今話題のリスキリングは手元から!
リテラアップアプリのご利用について、法人の方は下記フォームよりお問い合わせください。
(Excel,WordなどOffice製品やPC関連の技術的な質問にはお答えできかねます。ご了承ご了承ください。)