いきなり答える備忘録

G Suite・Microsoft 365・LibreOfficeなどに関するメモと日々の実験

(Gスプレッドシート)COUNTBLANK関数は空文字列をもカウントする

 GoogleスプレッドシートのCOUNTBLANK関数が、空文字列(長さ0の文字列)をカウントすることについてです。

  • COUNTBLANK関数はExcelの同名関数と同じく、純粋な空白セル(値がない。セルの初期状態)のほか空文字列(「=""」)やアポストロフィのみのセルをカウントします。
  • 空白セルのみを数える方法としてはCOUNTIF関数の第2引数を「"="」とする方法が挙げられます。
  • Googleスプレッドシートでは式により空白セルを返すことができるので若干注意が必要です。

手順

f:id:accs2014:20191215134911p:plain:right:w400

 B3からB6セルに空白セル、アポストフィ(')、空文字列(="")、普通の文字列をそれぞれ配置します。
 これに対し、B8セルには「=COUNTBLANK(B3:B6)」と入力します。
 また、B9セルには「=COUNTIF(B3:B6,"=")」と入力します。

 COUNTBLANK関数は名前がISBLANK関数に似ていますので一見空白セルのみをカウントしそうですし、COUNTIF関数の引数は奇妙ですが……

f:id:accs2014:20191215134916p:plain:right:w400

 結果はこうなります。
 COUNTBLANK関数は空白セルのほかアポストロフィや空文字列をカウントするため結果は3となります。
 一方でCOUNTIF関数の方は空白セルのみをカウントしているため結果は1となります。

 Googleスプレッドシートでも(Excelと同様に)ほとんどの関数や式では空白セルと空文字列を同一視しますので、空白セルと空文字列の区別を持ち込んでややこしくすることは避けた方が(つまりCOUNTBLANKの方が普通でISBLANKの方が異端として扱う方が)自然かもしれません。
 しかし、GoogleスプレッドシートはExcelと違って「式の結果として空白セルを返すということができる」点は留意しておいた方がよさそうです。

 なお、空白セルの返し方等については次の記事をご覧ください。

www.officeisyours.com