Excel 在线练习题 / 查找与引用

用商品名称的一部分查价格(VLOOKUP 通配符)

困难 查找与引用
题目说明
提示 0/4
官方解法 2
–
测试用例
1
2
3
重置
提交
fx
A
B
C
D
E
F
G
1
2
3
4
5
6
7
8
9
10
正在加载交互式电子表格...
正在准备单元格数据与公式求解引擎
○ 就绪 请在高亮的目标单元格输入公式,然后点「提交」。

题目

题目说明

POS 导出的商品名称很长——Arabica Coffee Beans 1kg——但搜索框里永远只有一个关键字。关键字在 D2,价目表在 A2:B5。请在 Price 单元格 F2 写出公式,让输入 Coffee 也能命中第一个名称含它的商品。

部分匹配需要在关键字两侧加通配符,而且必须用精确匹配——用近似匹配(TRUE)时星号会被忽略,还会挑到别的行。

题目数据

用表格查看整份数据(可选中、可复制)
这道题的数据表
ABDF
1ProductPriceKeywordPrice
2Arabica Coffee Beans 1kg18Coffee
3Decaf Coffee 500g15
4Green Tea 250g12
5Cold Brew Coffee 1L21

知识点

样式是「拼」出来的:"*" & D2 & "*" 把 Coffee 变成 *Coffee*,就能命中名称中的任意位置。通配符只在精确匹配(FALSE)下有效。多行匹配时,返回的是从上往下第一行。

解题思路

答案写在 F2。提交时我们会换 3 组输入重跑你的公式,写死数字一定过不了 —— 公式必须跟着单元格走。

  1. 目标单元格是 F2
  2. 关键字在 D2;名称在 A2:A5、价格在 B2:B5
  3. 在关键字两侧加星号,让它能在名称中间命中
  4. 公式形状:=VLOOKUP(?, ?, ?, FALSE)——样式放在第一个参数

官方解法

展开 2 种解法(建议先自己试一次)

解法 1:VLOOKUP 搭配通配符样式

=VLOOKUP("*"&$D$2&"*",$A$2:$B$5,2,FALSE)

星号代表「前后都可以有字」,所以 *Coffee* 会命中 Arabica Coffee Beans、Decaf Coffee 与 Cold Brew Coffee。VLOOKUP 取第一个命中的行,再读第 2 列。

解法 2:INDEX + MATCH 用同样的样式

=INDEX($B$2:$B$5,MATCH("*"&$D$2&"*",$A$2:$A$5,0))

MATCH 也支持通配符,而且返回位置、不受列号限制。当要取的值在名称列左边时特别好用。

函数指南

相关 Excel 练习

常见问题

VLOOKUP 可以只匹配单元格里的一部分吗?

可以,用通配符:把样式拼成 "*"&关键字&"*",并把最后一个参数保持 FALSE(精确匹配)。星号代表任意字符,所以关键字可以在名称的任意位置。

为什么用 & 拼样式,而不是直接写 "*Coffee*"?

写死关键字等于这条公式只会回答一个问题。"*"&D2&"*" 会读 D2 的内容,同一个公式今天查 Coffee、明天查 Tea(用例 2)。

多行匹配时 VLOOKUP 返回哪一行?

从上往下第一行。用例 1 有三个商品含 Coffee,答案是 Arabica 那一行。如果你需要全部匹配结果,VLOOKUP 不是合适工具——那要用 FILTER。