You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Sheets跨多工作表Bottom Up VLOOKUP获取最新匹配行求助

解决方案

VLOOKUP精确匹配时默认返回查找范围内第一个命中的结果,要实现优先匹配最新新增行的效果,只需要把合并后的数据源按原始行序倒排,让最新的行出现在查找区域的最上方即可。

修改后的完整公式如下:

=ARRAYFORMULA(IFERROR(VLOOKUP(A3:A,
  SORT(
    FILTER(
      {'movement co'!C:R;bfitt!C:R;gladstone!C:R;parkhurst!C:R;mayfield!C:R;alexandria!C:R;'crows nest'!C:R;newtown!C:R;'gregory hills'!C:R;annandale!C:R;graceville!C:R;'south penrith'!C:R;'north melbourne'!C:R;'back on track'!C:R;'elsternwick'!C:R;'brighton'!C:R},
      INDEX({'movement co'!C:R;bfitt!C:R;gladstone!C:R;parkhurst!C:R;mayfield!C:R;alexandria!C:R;'crows nest'!C:R;newtown!C:R;'gregory hills'!C:R;annandale!C:R;graceville!C:R;'south penrith'!C:R;'north melbourne'!C:R;'back on track'!C:R;'elsternwick'!C:R;'brighton'!C:R},0,1)<>""
    ),
    SEQUENCE(ROWS({'movement co'!C:R;bfitt!C:R;gladstone!C:R;parkhurst!C:R;mayfield!C:R;alexandria!C:R;'crows nest'!C:R;newtown!C:R;'gregory hills'!C:R;annandale!C:R;graceville!C:R;'south penrith'!C:R;'north melbourne'!C:R;'back on track'!C:R;'elsternwick'!C:R;'brighton'!C:R})),
    FALSE
  ),
  {16,2,3,4,15,10,5},
  0
)))

调整说明:

  • 新增FILTER函数过滤掉查找键列(即各工作表C列)为空的无效行,避免空行占用查找区域的顶部位置,同时提升公式运行效率
  • 用SORT搭配SEQUENCE生成的行号序列做降序排序,将合并数据源中原本靠后的新增行整体翻转到查找区域最靠前的位置,VLOOKUP命中时会优先返回最新行的结果
  • 原有返回列索引、匹配规则等逻辑完全保留,不影响原有数据输出结构

如果你的表格新增行都是追加在各个工作表的底部,这个方案就可以直接生效。如果是按某列(比如录入时间列)判断新数据,也可以把SORT的排序依据替换为对应的时间列,设置降序即可。

内容的提问来源于stack exchange,提问作者Dale Nelson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 21:36:04