[英]Excel Match, Index VLOOKUP Multiple Criteria
我正在嘗試填充一個單元格,並且僅顯示不存在的值。 如果存在,則顯示另一個值。
...但是我無法理解如何做到這一點。
我目前在E列的單元格上放置了以下公式
=INDEX(config!H2:H20,
MATCH(1,
(F4=config!F2:F20)*(VLOOKUP(D4,config!C2:D20,2,FALSE)=config!G2:G20),0))
正如您在此處看到的,這符合其他一些條件。 但是,您還可以看到值7被顯示兩次。 我希望它不顯示任何使用中的值。
因此,然后我在配置表中添加了一個額外的列,稱為“ Room In Use”,其中數據來自……該列中有一些公式可以檢查值是否正在使用中
=NOT(ISERROR(MATCH(H2,Sheet1!E2:E41,0)))
所以,回到我的sheet1,我認為這個公式需要另外一個條件說如果使用中的房間 == FALSE,那么
=INDEX(config!H2:H20,
MATCH(1,
(F4=config!F2:F20)*(VLOOKUP(D4,config!C2:D20,2,FALSE)=config!G2:G20),0))
否則,如果所有房間都為真,則顯示“無空房”
我嘗試使用:
{=INDEX(config!H2:H20,MATCH(1,(F5=config!F2:F20)*("FALSE"=config!J2:J20)*(VLOOKUP(D5,config!C2:D20,2,FALSE)=config!G2:G20),0)) }
但無濟於事...
在excel公式中這是否有可能,還是我需要使用VBA?
我在此處附加了我的Excel文檔: https : //www.dropbox.com/s/crmbbp8esdvnv29/Book1.xlsm?dl=0
要實現第一,第二,第三等匹配,您需要切換到SMALL(IF(...或AGGREGATE,以將匹配的行號返回給INDEX,其中k參數由已使用的累進COUNTIF或COUNTIFS提供本地工作表上的值。
雖然最終可能會出現n個過於復雜的單個公式,但您可以使用雙重查詢匹配列D到config!C:C以返回config!D:D中的值,可以使用“ helper”列來簡化條件計數。
將此公式放入M2(可選使用自定義數字格式;;;
),然后向下拖動到M2:M20。
=VLOOKUP(D2, config!C:D, 2, FALSE)&F2
現在E2:E20中的公式是
=INDEX(config!H:H,
AGGREGATE(15, 7, ROW($2:$20)/((config!F$2:F$20=F2)*(config!G$2:G$20=VLOOKUP(D2, config!C:D, 2, FALSE))),
COUNTIF(M$2:M2, VLOOKUP(D2, config!C:D, 2, FALSE)&F2)))
收到E16錯誤不會感到驚訝。 修復D16中的錯字后,此問題將得到糾正。 其他所有#NUM個! 當您用盡了可能的匹配值時,就會發生錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.