取得與時間序列中的條件相符的所有值的列表

取得與時間序列中的條件相符的所有值的列表

我有一個時間序列想要分析。我想提取一些符合某些條件的數據。但是,我還需要確保公式查看最新資料(即新增至時間序列的最新列)。

要提取符合條件的數據列表,我可以使用提供的答案這裡

為了確保Excel可以在公式中包含新列,我可以使用offset這裡提到的函數回答

然而,我正在努力使用這兩個答案來創建我想要的公式。

期望的輸出:

Names   24/03/2019   25/03/2019     Criteria     Date                   
Name 1       A            A               A      25/03/2019              
Name 2       A            B
Name 3       B            A
Name 4       C            A
Name 5       A            A

在上面的範例中,當今天的列新增到時間序列中時,我希望公式將今天的列中包含字母「A」的名稱清單從 3 個名稱變更為 4 個名稱。

答案1

雖然此處可以使用“OFFSET”函數,但它是一個易失函數。這意味著每當工作表上的某些內容發生變化時,即使它對公式沒有影響,它也會重新計算。作為替代方案,我建議使用INDEX非揮發性公式,僅在影響它的事物變化時才重新計算。

假設您的資料從 B2 開始(B2=名稱)。另一個假設是,除了日期之外,第 2 行中不能有任何數字,且日期以 Excel 格式存儲,而不是文字。

在您希望顯示清單的空白儲存格中使用下列公式並向下複製。我會一直詳細到你的名字列表,以排除所有名字都是有效選擇的可能性:

=IFERROR(INDEX(B:B,AGGREGATE(15,6,ROW($B$3:$B$7)/(INDEX($C$3:$D$7,0,MATCH($F$3,$C$2:$D$2,0))=$E$3),ROW(A1))),"")

調整範圍以滿足您的需求。請注意哪些引用需要鎖定 ($) 以及哪些引用需要可以自由更改。

POC

相關內容