
我正在嘗試開發一個電子表格工具來幫助追蹤專業機組人員的培訓貨幣。為了在所有訓練中被視為“最新”,飛行員必須在規定的時間內完成各種訓練活動。
例如,如果機組人員有 30 天的接觸即走訓練貨幣,那麼他會想知道在成為非當前狀態之前他必須完成下一次接觸即走活動的日期。
考慮以下訓練事件 (1-5)、日期和「是/否」回應的電子表格 - 是否有公式可以傳回給定事件的最近日期?
1 2 3 4 5
01/03/14|YES|NO |YES|NO |YES|
01/05/14|NO |NO |YES|YES|NO |
01/12/14|YES|YES|YES|YES|NO |
01/15/14|YES|NO |NO |NO |NO |
01/21/14|NO |NO |YES|YES|NO |
01/25/14|NO |YES|YES|NO |NO |
鑑於上面的偽表,我希望 excel 傳回以下值:
對於活動 1:01/15/2014對於活動 2:01/25/2014
對於活動 3:01/25/2014
對於活動 4:01/21/2014
對於活動 5:01/03/2014
這可能嗎?
答案1
對的,這是可能的。在每個培訓活動欄位中輸入以下內容:
=MAX(IF(C3:C8="YES",$B$3:$B$8))
這是適用於事件 1 的公式。
這需要作為數組公式輸入,因此請點擊Ctrl+ Shift+ Enter。
答案2
答案3
您可以使用LOOKUP
不需要“數組條目”的方法。假設 A 列中的日期
=LOOKUP(2,1/(B2:B7="Yes"),$A2:$A7)
注意:這會「按位置」找到最後一個值 - 假設您的日期按照您的範例按升序排序,這將與按時間順序排列的最後一個值相同