簡體   English   中英

Excel-從VLOOKUP從數組到COUNTIF的條件行

[英]Excel - Conditional row from an array to COUNTIF from VLOOKUP

我不知道我是否會以錯誤的方式進行操作,但似乎應該很簡單。 列A具有名稱列表。 每一行上都有幾個“ W”。 另一個單獨的字段具有一個下拉列表,代表A列名稱。 我想計算與我選擇的名稱相對應的一行中“ W”的數量。 我試過使用VLOOKUP和COUNTIF,但我不知道如何選擇整個數組,然后單挑與我選擇的名稱匹配的一行。 我可以使它與一堆IF語句一起使用,但是那太浪費時間了,因為我正在手動將名稱與行匹配(並且這不是將來的證明)。

有幾種方法可以首先在要查找的行上“縮小”,之后,您可以使用簡單的COUNTIFS來檢查該行中W的數量。

一種方法是簡單地使用INDIRECT並動態創建行引用,例如[假設您的搜索單元格為C1]:

=COUNTIFS(INDIRECT(MATCH(C1,A:A,0)&":"&MATCH(C1,A:A,0)),"W")

這首先使用MATCH查找適當的行,然后建立對該行的引用(如“ 24:24”),該行成為INDIRECT傳遞給COUNTIFS的行,該行將W計數為該行。

僅使用INDIRECT一次,INDIRECT的高計算成本就不會成為問題。

另一種方法是指出可能包含數據的完整框(假設最多僅使用H列),然后使用INDEX為我們提供適當的行號,如下所示:

=COUNTIFS(INDEX(A:H,MATCH(C1,A:A,0)),0,"W")

這再次使用MATCH在A列中查找包含C1中找到的值的行。然后,它從INDEX中取出全部可能的框,並返回特定行的所有列[請注意,告訴索引實際上為列#返回0而是返回所有列]。

也可以使用其他方法(例如OFFSET),但是我相信這兩種方法可以很好地說明原理。

您可以使用“ Helper”列方法:

在此處輸入圖片說明

在幫助器列中:

=COUNTIF(B2:H2,"W")

然后在合計欄中使用SUMIF():

=SUMIF($A$2:$A$9,K2,$I$2:$I$9)

暫無
暫無

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

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