質問: エクセル countif関数で、範囲を可変にするには countif関数を使い、d列の任意の値の個数を出したいと考えています。 検索範囲:d3~d列の最終行まで なお、d列は空白セルもあるため、必ずデータが存在するa列の値を参照し =counta(offset($a$3,,,counta(a:a),1)) こちらでd列の最終行の値を求めることまではできました。 ここからcountif関数を使用する際 通常150行までであれば =countif(d3:d150,1) となりますが、このd150のところを可変にする場合の記述を どのようにしたらよいでしょうか? =countif(d3&”:d”&counta(offset($a$3,,,counta(a:a),1)),1) ↑このような感じの雰囲気は分かるのですが・・・ よろしくお願いします。
回答: offset関数や、indirect関数を使いましょう。 offset関数は範囲を数値で指定できます。 indirect関数は、文字列を範囲に変換する関数なので、範囲を示す文字列を作って与えれば良い。 それぞれの関数の使い方を調べてみましょう。 意外と簡単ですよ。 まあ、質問者さんの場合はindirect関数で解決するような気もしますけど...。 ・・・ というか、 =counta(offset($a$3,,,counta(a:a),1)) これ、スゲー無駄なことをしているように見えるのは自分だけでしょうか。 =counta(a:a)-counta(a1:a2) で良いじゃん。