excel - VLOOKUP 单元格中的每个单词以执行缩写解码
问题描述
想要使用公式提供解码多个缩写
我有一个由所有“缩写”单词组成的单元格表,我想使用查找表对它们进行解释。VLOOKUP、INDEX(MATCH) 或数组公式均优于宏。
主表:
Column A | Column B | Column C
Part No. | Description | DESIRED OUTPUT
ABC101 | CAL 40 UKE WH RD | California 40" Ukelele White Red
ABC202 | DLX 55 GTR BK BL | Deluxe 55" Guitar Black Blue
ABC303 | CAL HD 40 VIO RD BL | California Hot Dog 40" Violin Red Blue
缩写可以按任何顺序排列,有些可能不存在。
查找表:
Column J | Column K
Abbrev | Expansion
CAL | California
DLX | Deluxe
UKE | Ukelele
GTR | Guitar
VIO | Violin
WH | White
BK | Black
RD | Red
BL | Blue
40 | 40"
55 | 55"
etc.
我想我可以将“B 列”描述拆分为多列(使用MID(FIND(" ")——而不是“文本到列:分隔”),然后查找每一列,忽略空白和错误,并集中结果,但我想在一个超级公式中做到这一点。可能的?
解决方案
感谢您提供文本形式的数据示例。使复制/粘贴到 Excel 变得容易。
一个不太好的公式怎么样:
我将 HD 添加到缩写列表中,并为该列表使用了一个表(可以轻松添加、更改、删除,而无需担心调整引用)。
=TEXTJOIN(" ",TRUE,
INDEX(tblAbb[Expansion],
MATCH(TEXT(
FILTERXML("<t><s>" & SUBSTITUTE(B2," ","</s><s>") & "</s></t>","//s"),"@"),
tblAbb[Abbrev],0)))
算法
FILTERXML
返回单个缩写的数组MATCH
返回缩写表中这些缩写的行号的数组。INDEX
使用返回的数组返回MATCH
扩展字符串。TEXTJOIN
将该数组与space
每个扩展之间的分隔符连接在一起。
推荐阅读
- java - 为什么在数据库中插入 JPA null
- neo4j - 如何通过 neo4j 或 apoc 应用通用 json-patch 操作
- integration-testing - 2checkout沙箱不发送INS通知
- php - 使用php pdo更新查询mysql中的多个表还检查数据库关系
- r - 如何在 r 中动态更新选择输入的选择
- docker - 暴露 Docker 端口的问题
- sql-server - 从日期范围内获取数据
- excel - Pandas 和 Openpyxl 覆盖 excel
- javascript - 如何在角度 4 中使用 *ngFor 创建每行 2 列的表
- android - 使用 Glide 和 FireBase 存储和显示图像 android