WebDesign Dackel

エクセルで自身より上のセルを条件付きカウント

Hatena0
Google+0
Pocket0
Feedly0

普段あまりエクセルを使った作業は無いのですが、たまに使うと使い方が分からなくなることがあるのでちょっとメモ的な投稿です。
(エクセルでプログラム的な処理が出来るのを結構最近知りました。笑)

やりたいこと

タイトルにある通り、自身よりも上のセルからある値を検索して一致した数をカウントするというものです。
例えばB列の0〜10行目から「済」という文字がいくつあるかみたいなやつです。

数式

下記の数式を入れることで実現できました。

=COUNTIF(INDIRECT(ADDRESS(1,COLUMN(),1)&":"&ADDRESS(ROW(),COLUMN(),1)),”済")

これで、上にある「済」の数が自動で表示されるようになります。

注意点

COUNTIF()に対して、セルの参照を返すADDRESS関数を指定するとエラーになってしまいます。そのためINDIRECT関数を挟む必要があるようです。

まとめ

正直、これを使わなくても範囲指定部分をドラッグすれば良さそうですが、普段はプログラムを書くような作業をしているためどうせならそれっぽくやりたいと思ったので…。