web-dev-qa-db-ja.com

Countif日付配列数式

トレーニングのコンプライアンスを追跡するためのシートを作成しようとしています。いくつかの要約フィールドを作成する必要があります。これは、人が現在行っている手順の数、古くなっている手順の数、およびトレーニング後に新しい手順が発行された数を示します。

したがって、以下に示すデータの場合、次のものが必要です。

  • 人物Aの隣の3つの日付を調べ、それらの日付1と日付2の両方よりも後の日付の数を計算する1つの計算
  • 人物Aの隣の3つの日付を調べ、その上の日付1と日付2の間にある日付の数を計算する1つの計算
  • 人物Aの隣の3つの日付を調べ、それらの日付1と日付2の両方よりも前の日付の数を計算する1つの計算

以下を使って配列数式を試しましたが、思ったように動作しないようです。これは、人物Aの隣の日付が、その上の列だけでなく、日付1と日付2の隣のすべての日付よりも大きい場合にのみ機能します。

=COUNTIFS($G65:$GX65,">="&$G$10:$GX$10,$G65:$GX65,">="&$G$6:$GX$6)

また、条件付き書式を使用して、人物Aの隣の日付に文字を追加しようとしましたが、書式設定によって追加された場合、COUNTIF関数はその文字を検出しません。

任意のヒント?

enter image description here

1
bpmccain

あなたの例のように、Date 1が常にDate 2よりも遅い場合は、次の式を使用できます。

  Later:  =SUMPRODUCT(--($E6:$G6>$E$2:$G$2))
Between:  =SUMPRODUCT(($E6:$G6<=$E$2:$G$2)*($E$6:$G$6>=$E$3:$G$3))
Earlier:  =SUMPRODUCT(--($E$6:$G$6<$E$3:$G$3))

enter image description here

日付1が[〜#〜] not [〜#〜]常に後の日付である場合、数式に必要なのは適切な日付を比較するために少し拡張されます

2
Ron Rosenfeld

OPが計算することを述べたので、Person Aの隣の3つの日付、およびそれらの何個がlater, between and earlierDate 1の両方よりもDate 2であるかを把握します

したがって、COUNTIFCOUNTIFSを使用して、G69:I69の日付を1の日付2G65:I66と比較しました。

enter image description here

  • セルD69の配列(CSE)数式:

    {=COUNTIF($G$69:$I$69,">"&$G$65:$I$66)}
    

日付は01-Jan-2015-Oct-19です。

  • セルE69の配列(CSE)数式:

    {=COUNTIF($G$69:$I$69,"<"&$G$65:$I$66)}
    

日付は01-Sep-19です。

  • セルF69の配列(CSE)数式:

    {=COUNTIFS($G$69:$I$69,">="&MIN($G$65:$I$66),$G$69:$I$69,"<="&MAX($G$65:$I$66))}
    

日付は01-sep-1915-Oct-19です。

N.B。

  • D69, E69 & F69の数式をCtrl + Shift + Enterで終了します。

  • 必要に応じて、数式のセル参照を調整します。

0
Rajesh S