【Excel関数】LEN関数とは

ここでは、Microsoft ExcelのLEN関数の使用方法について説明します。
解説
| 関数 | =LEN(文字列) |
|---|---|
| 読み方 | レン |
| 説明 | 文字列に含まれる文字数を返します。 |
| 分類 | 文字列関数 |
| 機能 | 文字列の長さ |
引数について
=LEN(文字列)
文字列:必ず指定します。文字数を調べたい文字列または文字列を含むセルの参照を指定します。
注意点
・スペースは文字としてカウントされます。
・一部の言語では対応していない場合があります。
アドバイス
・文字列の先頭(左端)から指定した文字数の文字を抽出したい場合は「LEFT関数」を、文字列の末尾(右端)から指定した文字数の文字を抽出したい場合は「RIGHT関数」を使用しましょう。
・文字列の任意の位置から指定した文字数の文字を抽出したい場合は「MID関数」を使用しましょう。
・文字列中の指定した文字を他の文字に置き換えたい場合は「SUBSTITUTE関数」を使用しましょう。
活用例
他のLEN関数を紹介している記事ではLEN関数でWebライター用に文字数をカウントしたり、8文字以上になっているかを確認したりと、ふだん使わないような事例を紹介しているサイトがほとんどです。本記事では、LEN関数の応用として他の関数と組合せて実践的な使われ方を想定して紹介しますので、ぜひ参考にしてみてください。
例1:LEN関数とSUBSTITUTE関数を組合せて特定の文字の文字数を求める
NUMBERSTRING関数の記事で紹介しているのですが、例えば住所を漢数字に変換したい場合に、LEN関数とSUBSTITUTE関数の組合せテクニックが必要となります。よく電話番号なんかで紹介されていますが、電話番号はハイフンの位置が決まっているので、LEN関数の出番はありません。ですが、住所はハイフンの位置や数が異なりますので、ハイフンの数によって実行する関数を変えたい時などに、LEN関数とSUBSTITUTE関数の組合せテクニックが必要になります。
住所のハイフンの数を求めると、下記のようになります。

※すべて架空の住所です。
LEN関数とSUBSTITUTE関数を以下のように組み合わせることで、特定の文字の文字数を求めることができます。
『=LEN(B3)-LEN(SUBSTITUTE(B3,"-",""))』
SUBSTITUTE関数についてザックリ説明します。
SUBSTITUTE関数:文字列中の指定された文字を他の文字に置き換えます。
SUBSTITUTE関数を使用してハイフンを削除することで、LEN関数と組み合わせてハイフンの数を求めています。
例2:メールアドレスから@マークの左側と、@マーク以降(ドメイン)を抽出する
例えば、メールアドレスのドメイン使用率の分布を調査したいとします。いくつかのドメインしかないのであればそれだけ探せばよいのですが、今回は不特定多数のドメインが混在しているものと考えてください。そんな時に、次に紹介するような方法で関数を組めば、どんなドメインでも抽出することができます。
先ずは、抽出結果をご覧ください。

※すべて架空のメールアドレスです。
LEN関数の他に、FIND関数とRIGHT関数を以下のように組み合わせることで、ドメインを抽出しています。
『=RIGHT(B3,LEN(B3)-FIND("@",B3)+1)』
それぞれザックリ説明します。
FIND関数:指定された文字列を他の文字列の中で検索し、最初に現れた文字の位置を文字数で返します。
FIND関数を使用して、@マークの位置を探し出しています。
LEN関数:文字列に含まれる文字数を返します。
LEN関数とFIND関数の検索結果を組み合わせることで、@マーク以下の文字数を求めています。
RIGHT関数:文字列の末尾(右端)から指定された文字数の文字を返します。
@マーク以下の文字数が求められたので、その結果をもとにRIGHT関数を使用して@マーク以下の文字列を抽出しています。