簡體   English   中英

INDEX MATCH 2 列標准 [部分匹配 + 完全匹配]

[英]INDEX MATCH 2 Column Criteria [Partial Match + Full Match]

有一張名為“預訂”的表格。

H 列反映了他們的角色

  • 銷售量
  • 接待員
  • 銷售和接待員

在當前工作表中:

  • J 列,它是一個資格角色,例如“銷售”或“接待員”。

如何修改索引匹配的以下代碼以僅從“預訂”中提取部分匹配列 J 的員工?

如果某人的角色是“銷售”,我可以讓它拉過“銷售”。 如果某人的角色是“接待員”,我可以讓它拉過“接待員”。 但是,如果是“SALES AND RECEPTIONIST”作為角色,無論是“SALES”還是“RECEPTIONIST”都拉不過去。

請告知我應該如何修改下面的公式。

=IFERROR(INDEX(Bookings!$B:$B, 
MIN( 
IFERROR(MATCH(1,($N3=Bookings!$C:$C)*($J3=Bookings!$H:$H),0),1E+99), 
IFERROR(MATCH(1,($N3=Bookings!$D:$D)*($J3=Bookings!$H:$H),0),1E+99), 
IFERROR(MATCH(1,($N3=Bookings!$E:$E)*($J3=Bookings!$H:$H),0),1E+99), 
IFERROR(MATCH(1,($N3=Bookings!$F:$F)*($J3=Bookings!$H:$H),0),1E+99), 
IFERROR(MATCH(1,($N3=Bookings!$G:$G)*($J3=Bookings!$H:$H),0),1E+99)

 )))

我從您的陳述中了解到的(您的問題需要澄清一下):

如果某人的角色是“銷售”,我可以讓它拉過“銷售”。 如果某人的角色是“接待員”,我可以讓它拉過“接待員”。 但是,如果是“SALES AND RECEPTIONIST”作為角色,無論是“SALES”還是“RECEPTIONIST”都拉不過去。

您正在尋找一個考慮OR條件的過濾條件,以防您同時尋找這兩個角色。 以下是在單元格F3上執行此操作的方法(請參見下面的屏幕截圖):

=LET(result, FILTER(C3:D20, 
  (C3:C20<>"") * (IF(A3="SALES AND RECEPTIONIST", 
  (D3:D20="SALES") + (D3:D20="RECEPTIONIST"), D3:D20=A3))), 
  IF(A3="","", result))

您可以通過FILTER function 考慮多個過濾條件。 用乘法 ( * ) 模擬AND條件,用加法 ( + ) 模擬OR條件。 對於FILTER的第一個輸入參數的相同范圍,每個條件的計算結果為01 ,因此這就是您實現它的方式。 我排除了空行以考慮更一般的情況。 LET function 用於方便閱讀。 這是屏幕截圖:

示例 excel 文件

在單元格A3中,我有一個列表( Data->Data Validation->Allow選項List ),其中包含以下值: SALES,RECEPTIONIST,SALES AND RECEPTIONIST ,因此您可以按角色動態過濾。

我希望它有助於在您的實際問題上使用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM