Excel

セル内に特定の単語(同じ文字)がいくつ含まれているかを数える|LEN関数×SUBSTITUTE関数

 

文字列の中に含まれている特定の文字や単語、例えば、A半角スペース○○といった単語数を調べたい、ということがありませんか?

 

LEN関×SUBSTITUTE関数

 

この記事では、文字数を数えるLEN(レングス)関数と、文字を指定した文字に置換するSUBSTITUTE(サブスティチュート)関数を組み合わせる方法で説明します。

 

 

LEN関数とSUBSTITUTE関数で特定文字の数を求める

セル内に含まれている特定の文字や単語、例えば、A 半角スペース○○といった単語数を調べるには、文字数を数えるLEN(レングス)関数と、文字を指定した文字に置換するSUBSTITUTE(サブスティチュート)関数を組み合わせる必要があります。

 

以下では、事例を用いて説明してします。

 

レングス/レングス・ビー 書式
LEN関数/LENB関数 文字列 

関連記事文字数とバイト数の違いを理解!濁点のバイト数、文字の長さに関する関数も紹介

 

サブスティチュート 書式
SUBSTITUTE関数 文字列,検索文字列,置換文字列[,置換対象

 

事例1:同じ文字の数を調べる

事例で説明します。今、B2セルに SUBSTITUTE という文字列が入っているとします。

この[SUBSTITUTE]という文字列に T がいくつ入っているかを調べたいとします。

 

LEN関数で文字数を求める

まずは、文字数を数えるLEN(レングス)関数で、B2セル内の文字数(ここでは、SUBSTITUTEの文字数)を求めます。

C2セルに、=LEN(B2)と入力します。

C2セルにLEN関数

 

 

この式を確定すると、C2セルに、B2セルの文字数10が返されます。

SUBSTITUTEの文字数を調べる

 

SUBSTITUTE関数で T を空白に置換する

次に、文字を、指定した文字に置換するSUBSTITUTE(サブスティチュート)関数を使います。

 

SUBSTITUTE関数で、T空白に置換する、つまり、SUBSTITUTEという文字列からT削除します。

 

B3セルにSUBSTITUTE関数を入力します。

 

B2セルに入力されているSUBSTITUTEという文字列から Tを削除する(空白に置換する)ので、B3セルには、=SUBSTITUTE(B2,"T","")と入力します。

 

空白を式の中で表現するには、""(ダブルクォーテーション)とします。

B3セルにSUBSTITUTE関数

 

 

この式を確定すると、B3セルには、SUBSIUEと返されます。

B3セルがSUBSIUEになった

 

置換後の文字数をLEN関数で求める

今度は、B3セルの SUBSIUE の文字数を求めます。

 

C3セルに、=LEN(B3)と入力します。

C3セルにLEN関数

 

 

この式を確定すると、C3セルに、B3セルの文字数7が返されます。

SUBSIUEの文字数を調べる

 

元の文字数から置換後の文字数を引く

最後に、元の文字列の文字数(ここでは、10)から、置換後の文字数(ここでは、7)を引けばTの数がわかります。

10-7で3です。

Tの数を求めることができた

 

このように、LEN関数SUBSTITUTE関数を組み合わせて、セル内に特定の文字の数を求めます。

 

では、セル内に特定の単語の数はどうやって求めるのでしょうか?

次は、セル内に特定の単語の数を求める方法を説明します。

 

特定の単語の数を求める

今度は、セル内に含まれている特定の単語を調べます。

基本的な流れは、セル内に含まれている文字の数を調べる方法と同じです。

 

事例2:同じ単語の数を調べる

事例で説明します。

今、B2セルに「Excelにはいくつの関数がご存知ですか?Microsoft 365には、約480個の関数があります。このような膨大な数の関数を、すべて頭に入れて使いこなすのは難しいことです。」という文字列が入っているとします。

 

この文章の中に、関数 がいくつ入っているかを調べたいとします。

先ほど、登場した表のようなものを埋めながら説明していきます。

単語数を調べる1

 

LEN関数で文字数を求める

まずは、文字数を数えるLEN(レングス)関数で、B2セル内の文字数を求めます。

さきほどと同じように、C2セルに、=LEN(B2)と入力します。

単語数を調べる2

 

 

この式を確定すると、C2セルに、B2セルの文字数88が返されます。

単語数を調べる3

 

SUBSTITUTE関数で 関数 を空白に置換する

次に、文字を、指定した文字に置換するSUBSTITUTE(サブスティチュート)関数を使います。

 

SUBSTITUTE関数で、関数空白に置換する、つまり、B2セルの文章から関数という単語を削除します。

 

B3セルにSUBSTITUTE関数を入力します。

 

B2セルに入力されている文章から 関数を削除する(空白に置換する)ので、B3セルには、=SUBSTITUTE(B2,"関数","")と入力します。

単語数を調べる4

 

 

この式を確定すると、B3セルには、関数という単語がない文章が返されます。

単語数を調べる5

 

置換後の文字数をLEN関数で求める

今度は、B3セルの 文章 の文字数を求めます。

C3セルに、=LEN(B3)と入力します。

単語数を調べる6

 

 

この式を確定すると、C3セルに、B3セルの文字数82が返されます。

単語数を調べる7

 

元の文字数から置換後の文字数を引く

元の文字列の文字数(ここでは、88)から、置換後の文字数(ここでは、82)を引きます。すると、6が求まります。

単語数を調べる8

 

単語の文字数で割る

文字数を数えるのなら、この6 となりますが、ここでは、関数という単語が何個あるかを調べています。

 

単語の数を調べるときは、調べたい単語の文字数、ここでは、関数という2文字なので、26割ります。

 

すると、3になります。つまり、関数という単語が3個あったということがわかります。

 

 

まとめ

文字列の長さを調べるLEN関数は他のExcel関数と組み合わせることで真価を発揮の記事でも書きましたが、LEN関数は、他のExcel(エクセル)関数と組み合わせて使うことの多い関数です。

今回は、SUBSTITUTE関数と組み合わせるテクニックを紹介しました。

FIND関数RIGHT関数と組み合わせるテクニックは、文字列の長さを調べるLEN関数は他のExcel関数と組み合わせることで真価を発揮で紹介していますのでまだの方はぜひ読んでみてください。

 

 

おすすめ記事

参考文献

-Excel
-

© 2024 まなびっと Powered by AFFINGER5