如果存在重复项,则仅查询最近的值

Query only most recent value if duplicates exist

我在仓库工作,正在开发库存系统。当产品进来时,是因为它们已损坏。我有一个人在 Google Sheets 填写一行,当产品到达时(Sheet1 在下面的工作簿 link ).我主要需要 Sheet).

中的条码、发行和日期

接下来,机械师修理产品并用他的名字和产品条形码填写 google 表格;响应是下面工作簿 link 中的 Form Responses 1

然后我将所有传入产品的数据从 Sheet1 拉到新选项卡(条形码 In/Out 在下面的工作簿 link 中),查询条码、问题和日期。我在此选项卡的另一列中提取所有外发产品的数据,从 Form Responses 1 查询条码。 E 列(待办事项)有一个公式,仅显示尚未修复(消失 "out")的产品的条形码。

我将 Back log 中的数据(仍在仓库中需要维修的产品)提取到另一个名为 Back Log 的选项卡中。直到我意识到 产品可以返回我们的仓库 (即“123”可以进入并修复并再次发送)之前,这一切都很顺利。 “123”可以再回来维修。)

这会带来问题,因为 Back Log 现在显示“123”两次,有两个不同的问题。

我需要 Back Log 来查询“123”,并且只查询最新一期。

这是很多信息,但我已尽力提供详细信息。提前感谢您的帮助!

Here is the link to my workbook

我进入了G2

=ArrayFormula(iferror(vlookup(unique(Sheet1!B2:B), sort({Sheet1!B2:B, Sheet1!A2:F}, 7, 0), {2, 3, 4, 5, 6}, 0)))

更新:基于新信息...

=query(ArrayFormula(iferror(vlookup(unique(Sheet1!B2:B), sort(filter({Sheet1!B2:B, Sheet1!A2:F}, not(regexmatch(Sheet1!B2:B&"", textjoin("|", 1, filter('Barcodes In/Out'!D2:D, isna(match('Barcodes In/Out'!D2:D, 'Barcodes In/Out'!E2:E, 0))))))), 7, 0), {2, 3, 4, 5, 6}, 0))), "where Col1 <>''")

看看这对你有用吗?