Googleスプレッドシートで、複数のセルに含まれる文字の文字数をの合計を求める方法についてです。
一見なんてことはありませんが、アプローチによってはちょっとした罠にはまる場合があります。
一見なんてことはありませんが、アプローチによってはちょっとした罠にはまる場合があります。
- 複数セルの文字数の合計は「=SUM(ARRAYFORMULA(LEN(範囲)))」で求められます。
- 「=LEN(CONCATENATE(範囲))」でも可能ですが、文字数が50000に達するとエラーになります。
手順
B3:B7の範囲にある文字数をカウントします。
まずは「=ARRAYFORMULA(LEN(B3:B7))」と入力とそれぞれのセルの文字数が求められますので……
さらに式をSUM関数で囲んで完成です。
つまり式はつぎのようになります。
=SUM(ARRAYFORMULA(LEN(B3:B7)))
この式のメリットは文字数が膨大な場合でもきちんとカウントできることです。
画像では「=SUM(ARRAYFORMULA(LEN(B3:B)))」という式(B3セル以降のすべてのセルを数えています)により、8万字余りの文字数を難なくカウントしています。
一方で「=LEN(CONCATENATE(B3:B))」とすると式は短く済むのですが、CONCATENATE関数の50000字制限に引っ掛かりエラーになってしまいます。
Googleスプレッドシートの文字列結合関数はとても便利ですが、この点には注意が必要です。