題 如何在一個IF語句中組合VLOOKUP,其中VLOOKUP函數的列索引是從文本中推斷出的數字?


我在Excel中有以下表格:

Product Stock 

Stock Analysis

產品庫存表 (太平洋標準時間) 比這更廣泛,但為了這個問題的目的,我已經削減了它。

我想在Stock Analysis表的列中查找值 (SAT) 匹配Product Stock表的Size列中的值。

例如,在本例中,我的產品庫存表的大小列中的值 (太平洋標準時間) 是 8 所以我想查找中的值 大小8 我的股票分析表的列。如果我的價值是  然後查找 大小5 在我的股票分析表中 (SAT)

請注意,已執行數據驗證以確保“我的產品庫存”表的“大小”列中的值基於指定的維度,因此只有一系列大小也是“庫存分析”表的列

還插入了公式以確保下一行 SAT 將始終有一個比前一行大一個的批號(即每個新行的批次No列上增加1)這是為了確保批次不重複 SAT


4
2018-05-02 09:43


起源


不確定我完全理解。你沒有標記你的桌子,我假設第一個是你的PST,第二個是你的SAT?還有,你期待什麼結果?你提到PST的大小列是8,你的SAT表的結果是什麼?我假設7? - Kevin Anthony Oppegaard Rose
是的,我很抱歉,但在我輸入問題時,我覺得桌子上貼了標籤。然而,我試圖進一步解釋。 @ g.kov好像已經解決了我的問題。 - MrMarho


答案:


像這樣的東西?

enter image description here

公式 H12 是:

=VLOOKUP(E12,$C$6:$H$8,MATCH("Size "&F12,$C$5:$H$5,0),FALSE)

編輯: 公式如何 H12 作品。

提供列號的部分,

MATCH("Size "&F12,$C$5:$H$5,0)

首先連接前綴 "Size " 價值 F12 (= 8),產生一個字符串 "Size 8"。 然後呢 查看標題行中的單元格 $C$5:$H$5  找到這個關鍵字符串 並返回一些匹配的單元格,即 6 (標題中的最後一個單元格)。 然後是公式

=VLOOKUP(E12,$C$6:$H$8,MATCH("Size "&F12,$C$5:$H$5,0),FALSE)

基本上成了

=VLOOKUP(E12,$C$6:$H$8,6,FALSE)

尋找的內容 E12 (= 1) 在範圍的第一列 $C$6:$H$8。 換句話說,它選擇行 對應於 Batch No=1, 是的 1。 並給出行(= 1)和列(= 6)數字 範圍中 $C$6:$H$8VLOOKUP 返回存儲的值 H6,是的 7


10
2018-05-02 11:20



是的,正是我正在尋找的。你結束了4個小時的頭腦風暴。 - MrMarho
因此我不需要我的IF函數,因為我已經進行了數據驗證? - MrMarho
@MrMarho:嗯,總有錯誤的地方,所以由你來決定如何處理它們。 - g.kov
@ fixer1234:補充道 - g.kov


試試吧 index 具有匹配Batch#和Size文本的函數:

=INDEX(C6:H8,MATCH($E12,$C$6:$C$8,0),MATCH("Size "&$F12,$C$5:$H$5,0))

2
2018-05-02 16:05



歡迎來到超級用戶。教育的答案比僅提供剪切和過去解決方案的答案要好,因為它們有助於讀者理解如何解決下一個問題。你能加幾句話來解釋一下這是怎麼回事嗎?謝謝。 - fixer1234