google-sheets - 谷歌表格过滤器+匹配?没有把握
问题描述
我在一张表中有两个标签,它们有不同的范围。一个是预设数据,另一个是从我们使用的程序中导入。如果可能的话,我试图找出一种方法,从表 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 多行,如果可能的话,我宁愿不手动执行此操作。
请协助?不管怎样,谢谢你的阅读。
解决方案
尝试:
=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______)
推荐阅读
- flask - Flask 应用程序上下文:app.app_context().push() 有效,但无法让“with app.app_context()”块工作
- ruby-on-rails - 理解捆绑器依赖解析
- sql - 是否有任何选项可以使用其他字段的值来限制字段的值?
- java - RecyclerView findLastCompletelyVisibleItemPosition 总是返回最后一个元素
- c++ - 如何安全地处理循环中的迭代器?
- javascript - 带有动态数据的 vue 轮播
- java - 我的代码有什么问题?计算结果不正确
- r - 在预测图中添加月份
- php - 在编辑时检查其他重复条目,但忽略当前表单中的重复项
- flutter - Flutter:小部件之间的间距不是边距