【发布时间】:2018-07-21 04:29:09
【问题描述】:
在 Google 表格中,给定两个范围/列的数据,根据列 B 的部分匹配查找列 A,如果不匹配则显示为空。
特别是在我的情况下,给定一个街区列表和一个带有街区前缀的房间列表,确定每个房间的街区。
+--------+---------+------------------------+ |块 |房间 |房间(输出) | +--------+---------+------------+ |广告 | AD201 |广告 | |自动曝光 | AD208/3 |广告 | |汞 | ADG07 |广告 | | HH | ADUG8 |广告 | | HSH | BY03 | | | | HG03 |汞 | | | HGG01 |汞 | | | HSH01 | HSH | | | HSHG5 | HSH | +--------+---------+------------+
我修改了search()、index() 和match(),如下所示:
=IFERROR(if(search(index($A$2:$A,MATCH(B2,$A$2:$A,1),1), B2), index($A$2:$A,MATCH(B2,$A$2:$A,1),1), ""))
但它不适用于arrayformula()。
最后我想出了这样的解决方案=ARRAYFORMULA( iferror(IF(SEARCH( VLOOKUP(B2:B,A2:A,1), B2:B), VLOOKUP(B2:B,A2:A,1), "")))
我想知道是否存在更优雅的匹配方式。
【问题讨论】:
标签: google-sheets array-formulas