首页 > 解决方案 > 谷歌表格过滤器+匹配?没有把握

问题描述

我在一张表中有两个标签,它们有不同的范围。一个是预设数据,另一个是从我们使用的程序中导入。如果可能的话,我试图找出一种方法,从表 1 中提取特定数据,并将其与表 2 中的值匹配,这些值的排序不同。

示例表 https://docs.google.com/spreadsheets/d/1OsSWQ_48VrcTU3pXGeJ_1syluKPVeVRune39UA9I3x4/edit?usp=sharing

我正在尝试公式 =sort(filter(Sheet1!B1:B,match(B1:B, Sheet1!B1:B ,0)),2,TRUE),但它只是将结果按顺序排列。如果我将排序中的列 # 替换为 1,它会乱序排序,但它与 B 列不匹配,就像我需要的那样。

我正在使用的文档每个有 2000 多行,如果可能的话,我宁愿不手动执行此操作。

请协助?不管怎样,谢谢你的阅读。

标签: google-sheetsmatchgoogle-sheets-formula

解决方案


尝试:

=arrayformula(iferror(vlookup(MATCH( B1:B,Sheet1!$B$1:B,0),{(ROW(Sheet1!A1:A)),Sheet1!A1:A},2,0)))

解释

  • step#1=arrayformula(MATCH( B1:B,Sheet1!$B$1:B,0))将给出在 Sheet1!column B 中找到每个值列 B 的行
  • 第 2 步=arrayformula({ROW(Sheet1!A1:A),Sheet1!A1:A})将构建一个虚拟矩阵,其中第 1 列中的行和第 2 列中 Sheet1!column A 的值
  • 最后:将两个公式连接为vlookup(___step#1____,____step#2______)

推荐阅读