2

特定の日に特定のステータスにあるアイテムの数を示すテーブルを生成しようとしています。私の結果テーブルには列 A の下に日付のセットがあり、列ヘッダーはさまざまなステータスです。ヘッダー付きのデータ テーブルのサンプルは次のようになります。

Product | Notice | Assigned | Complete | In Office | In Accounting 
   1    | 5/5/13 |  5/7/13  | 5/9/13   |  5/10/13  |    5/11/13 
   2    | 5/5/13 |  5/6/13  | 5/8/13   |  5/9/13   |    5/10/13
   3    | 5/6/13 |  5/9/13  | 5/10/13  |  5/10/13  |    5/10/13 
   4    | 5/4/13 |  5/5/13  | 5/7/13   |  5/8/13   |    5/9/13 
   5    | 5/7/13 |  5/8/13  | 5/10/13  |  5/11/13  |    5/11/13

出力テーブルの最初の列にステータスをヘッダーとして含む一連の日付が含まれる場合、指定されたステータスにあり、次のステータスにまだ遷移していない行の数をカウントする必要があるため、通知列では、通知日が <= X で、かつ、割り当て済み、完了、オフィス内、会計中がすべて X より大きい行の数を取得します。

私はSum(if(frequency(ifステートメントを使用して私を本当に近づけましたが、このように2番目のIF内にANDステートメントが必要なように感じます=SUM(IF(FREQUENCY(IF(AND

これが私が持っているもので、うまくいきません:

=SUM(IF(FREQUENCY(IF(AND(Table1[Assigned]<=A279,Table1[[Complete]:[In Accounting]]<=A279),ROW(Table1[[Complete]:[In Accounting]])),ROW(Table1[[Complete]:[In Accounting]]))>0,1))

「AND」部分を削除すると、指定されたステータスに実際に日付がある行のみをカウントする必要があることを除いて、これは正常に機能するため、「割り当てられた」日付が空の場合、その行をカウントしたくありません割り当てられた列。

これは、私が結果に期待することの例です。各列にカウントをリストし、対応する製品番号を括弧内にリストしました. 対応する製品番号は参考用であり、実際の結果表にはありません。

Date | Notice  | Assigned | Complete
 5/6 | 2 (1,3) | 2 (2,4)  |  0
 5/7 | 2 (3,5) | 2 (1,2)  |  1 (4)
 5/8 | 1 (3)   | 2 (1,5)  |  1 (2)
4

2 に答える 2

3

A1:F6 に元のデータがあり、B9:D9 に 2 番目のテーブル ヘッダーがあり、A10:A12 に行ラベルがあると仮定すると、B10 でこの「配列数式」を使用できます。

=SUM((B$2:B$6<=$A10)*(MMULT((C$2:$F$6>$A10)+(C$2:$F$6=""),TRANSPOSE(COLUMN(C$2:$F$6)^0))=COLUMNS(C$2:$F$6)))

CTRL+ SHIFT+で確認し、ENTER上下にコピーします (下のスクリーンショットを参照)

ご覧のとおり、結果は要件どおりです。日付を空白に置き換えても機能します

MMULT複数の列を見ている場合でも、各行から単一の値を取得する方法です。

特に数式をコピーして範囲を縮小する場合は簡単だと思うので、セル参照を使用しましたが、必要に応じて構造化参照を使用できます

ここに画像の説明を入力

于 2013-10-07T18:59:11.927 に答える