簡體   English   中英

Excel | 在不同工作表中搜索表並從該行中的列中獲取值

[英]Excel | Searching table in different sheet and bringing value from column in that row

我試圖在我的一張床單中查找一張桌子。 我的表由三列和無限量的行組成。

我的桌子在這里可以看到:

在此輸入圖像描述

在我的第二張表中,我希望編寫一個公式,搜索表中的所有行,並在A列和B列中查找完全匹配,這意味着它必須找到列a的值為“jan”的行,並且第二列的同一行必須具有值“y”。 如果找到這個匹配,它應該返回C列的值。

我試過研究hlookup,但那是橫向表,所以我不相信這會起作用。 我也查看了Vlookups,但這只允許一個標准搜索,而不是尋找兩個匹配。

有人可以在這里說清楚嗎?

您可以使用索引並匹配多個條件

=INDEX($A$1:$C$1000, MATCH("Jan"&"y", $A$1:$A$1000&$B$1:$B$1000, 0),3)

輸入此公式時按CTRL + SHIFT + ENTER

INDEX函數具有語法

INDEX(array, row_num_in_array, [column_num_in_array])

並且MATCH在邏輯匹配的索引位置返回

MATCH(lookup_value, lookup_array, [match_type])

將兩者結合起來是一種靈活的技術,而且功能非常強大 - 匹配lookup_value中的邏輯可能是一個復雜的條件。

最簡單的代碼

在整個列上操作

INDEX(C:C, MATCH("Jan"&"y", A:A&B:B, 0), 1)

nb./ A:A是“所有A列”的excel代碼。 你可以改用:

限制代碼

在工作表的子集上運行。

INDEX($C$2:$C$1000, MATCH("Jan"&"y", $A$2:$A$1000&$B$2:$B$1000, 0), 1)

請注意,您必須使用相同的行長度數組(例如,行2:1000),否則公式將不起作用。 MATCH只知道它的lookup_array中有多少行,你需要確保它的行與INDEX的數組中的行匹配

PS。 道歉這是接近前一個答案,但細節太長,無法發表評論。

PPS。 我錯過了對第一個答案的澄清。 這將起作用,但不需要在INDEX函數中使用所有三列作為array 畢竟,您只是從C列返回數據。

將范圍轉換為表(ctrl-t),然后使用SUMIFS根據兩個條件搜索表

=SUMIFS(Table1[Alteration],Table1[Month],"Jan",Table1[Products],"y")

這就是說“給我[改變] [月] =”Jan“和[Products] ='y'......這會返回364。

您可以將標准指向包含標准的單獨單元格。

請注意,如果有多個行具有相同的數據(即多個行包含'Jan'和'y'),則將C列匯總在一起。

暫無
暫無

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

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