簡體   English   中英

在Excel工作表中使用Vlookup匹配子字符串

[英]Using Vlookup in Excel sheet to match substring

請在下面找到我的問題,以顯示我已將該問題變成圖片的表格:

對於不匹配的文本,我想將值輸出為0。 在此處輸入圖片說明

您可以使用如下數組公式(Ctrl + Shift + Enter)查找relevan數據:

{=MIN(IF(ISERROR(FIND(Sheet1!$A$3:$A$5,A3)),FALSE,Sheet1!$B$3:$B$5))}

這是假設您的定價說明位於Sheet1中的A3:A5,並且您的產品標題位於A3中,而另一頁中的價格則向下

然后,您可以根據需要進行復制(拖放或其他方式)。 請注意,如果您具有匹配多行的字符串,則將獲得最低成本(如果需要,可以更改為其他聚合函數)。

該公式的工作方式是:

  1. FIND(Sheet1!$A$3:$A$5,A3) :返回索引或錯誤值的數組,具體取決於匹配的字符串。
  2. IF(ISERROR(FIND..) :測試每個數組項是否有錯誤,並且->
  3. 對於錯誤值(不匹配),返回FALSE
  4. 對於非錯誤值(匹配),根據數組位置/索引返回請求的值( Sheet1!$B$3:$B$5 )。
  5. MIN(....) :返回由一些FALSE值和一些(希望只有1個)數字組成的數組的最小值。 這會將數組聚合為一個數字。

由於您無法將Sheet1 Pricing中的相同單詞匹配到Sheet2 Product,因此需要在Sheet1 Pricing中的列說明和成本之間插入新列。 在此列中插入公式:

=VLOOKUP("*"&MID(A2,2,9)&"*",Product!$A$2:$A$4,1,0)

使用MID功能是因為據我所知,您在sheet2產品中沒有相同部分的褶皺(例如“ 3 HD包裝”-“ 3 Matte Sreen優質包裝”)

現在,您可以在工作表2產品中使用VLOOKUP公式,並使用新列作為參考:

=IFERROR(VLOOKUP(A2,Pricing!$B$2:$C$4,2,0),0)

暫無
暫無

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

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