dポイントプレゼントキャンペーン実施中!

勉強開始日
4月13日
4月14日
4月14日
4月15日
4月16日
5月1日

このようにA列から日付が並んでいる場合、
=COUNTIFS($A:$A,">=2020/4/1",$A:$A,"<=2020/4/30")

だと”5”という回答が返ってくるかと思いますが、重複を除いてカウントしたいので、
私が求めている答えとしては”4”になります。

A列を重複削除して数えればいいのでは?と言われそうですが、それをせずにExcelの関数で数えることができればいいなと考えております。
よろしくお願いいたします!!!

質問者からの補足コメント

  • うーん・・・

    作業列は出来れば無しでお願いしたいと思います。

    =SUMPRODUCT(1/COUNTIF(~のやり方も調べてはいたのですが、
    もしA列が増えていった場合、参照するセルの範囲を後で調整したりしなくてもいいのであれば、
    とてもありがたいなと思っております。

    可能でしょうか??

      補足日時:2020/04/17 10:55
  • どう思う?

    すみません、大切なことを述べてませんでした・・・
    自分は例の中で4月だけのデータを取得する場合どうすればいいのかわからなかったので、
    質問しました。

    日付の中で4月の間だけのデータを重複なしで取得したい場合は
     =SUMPRODUCT(1/COUNTIF~は使えないと思います

    以上を踏まえて教えていただけますでしょうか?

      補足日時:2020/04/17 11:00

A 回答 (4件)

No3です。



もう少し簡単に計算できましたね。失礼しました。

=SUMPRODUCT((COUNTIF(OFFSET(A$1,0,0,ROW(A1:A100)),A1:A100)=1)*(DATE(2020,3,31)<A1:A100)*(A1:A100<DATE(2020,5,1)))
    • good
    • 2

No2です。



> =SUMPRODUCT(1/COUNTIF~は使えないと思います
計算方法は同じなので応用すればよいだけですが、難しくしてわからなくするよりも、素直に作業列を利用した方が遥かに良いと思いますけれど?

=SUM(IF((COUNTIF(A1:A100,A1:A100)>0)*(A1:A100>=DATE(2020,4,1))*(A1:A100<DATE(2020,5,1)),1/COUNTIF(A1:A100,A1:A100),0))

ただし、配列数式になります。(Ctrl+Shift+Enterで確定が必須)
配列数式なので、計算量が飛躍的に増大します。
    • good
    • 0

こんにちは



A列の範囲の途中に空白セルを含まないとしてよいのなら
 =SUMPRODUCT(1/COUNTIF(A$1:A$6,A$1:A$6))

※ 範囲内に空白セルがあるとエラーになります。
    • good
    • 0
この回答へのお礼

ありがとうございます!これはカウントで列を指定はできないものなのでしょうか??
=SUMPRODUCT(1/COUNTIF(A:A,A:A))という風な感じです・・・

これをしようと思うと他の形でないといけないのでしょうか??

お礼日時:2020/04/17 10:51

同じ日付をカウントして、そのカウントした結果の「1」だけを数え直す事で重複した値を除いた数を得ることができますよ。



A列に日付があるなら、B列にCOUNTIF関数を使った重複した数を求める数式を入力し、
C1セルにでもB列の「1」の数を数えるCOUNTIF関数を使った数式を作れば良い。

B列を作業列として使うのです。 

=COUNTIF(範囲, 検索条件)
これが=COUNTIF関数の使い方です。

COUNTIFS関数をそれなりに使おうとしていらっしゃるので
数式を示さなくても大丈夫だと判断し、数式は省略させていただきます。
    • good
    • 0
この回答へのお礼

ありがとうございます。回答いただいたものであれば、A列をコピーして、重複削除するのと同じなので、作業列?は無しでやる方法はありますでしょうか?

お礼日時:2020/04/17 10:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています