Excel會依多個條件篩選

Excel會依多個條件篩選

我正在嘗試篩選 2021 年就診過的患者的報告,但如果患者在前幾年也曾就診過,我想將他們從報告中排除。 (因此,如果患者在 2018 年和 2021 年見過,我不希望他們拉)我還希望另一列中的數字大於等於並大於 10.0

B 欄 = 服務日期 C 欄 = 病人姓名 F 欄 = 數字指示符

過濾此公式或 =IF 公式的最佳方法是什麼?

這是一份醫療保健報告,因此由於患者資訊的原因,我無法提供該報告的內容。

答案1

正如評論中所建議的,這可以透過使用如下所示的公式的輔助列來完成:

=AND(F2>=10,COUNTIFS(C:C,C2,B:B,"<"&DATE(2021,1,1))=0)

確保調整引用F2C2匹配貼上公式的行。之後,您可以上下複製該列,這些引用將自動更新。以下是它的工作原理:

AND()要求裡面的所有條件都為 true,否則回傳 false。我們有2個條件:

  • F2>=10很簡單。
  • COUNTIFS()計算有多少記錄滿足多個條件。它們以範圍+條件對的形式出現,其中有兩個:
    • C:C,C2僅計算整個 C 列中與該行中的值(該行上的患者姓名)相符的那些值
    • B:B,"<"&DATE(2021,1,1)僅計算 2021-01-01 之前(即 2021 年之前)的日期。

如果COUNTIFS()傳回 0(表示在任何更早的年份都沒有找到患者)且 F 中的數字大於或等於 10,則該AND()函數將傳回 true。否則,返回 false。

將公式複製/貼上到表格的每一行,然後按該列進行篩選。你想要那些回傳 true 的。

答案2

請檢查以下資訊是否對您有幫助。

=IF(D4>=10,IF(ISNA(VLOOKUP(C4,$C$10:$C$13,1,FALSE)),B4:D4,""),"")

產生Result表後,只需將Result表的Value複製到新表中即可。然後參考刪除所有空白行。

在此輸入影像描述

相關內容