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

时间:2018-12-28 08:15:19

标签: google-sheets unique google-form inventory google-sheets-query

我在仓库工作,正在开发库存系统。产品进货时,是因为它们已损坏。产品到货时,我请一个人在Google表格中填写一行(下面的工作簿链接中的 Sheet1 )。我主要需要此工作表中的条形码,问题和日期。

接下来,机修工修理产品,并在Google表单中填写其姓名和产品条形码;响应是下面工作簿链接中的表单响应1

然后,我将所有传入产品的数据从 Sheet1 拉到一个新标签(下面工作簿链接中的条形码输入/输出),查询条形码,问题,和日期。我在此标签的另一列中提取了所有待售产品的数据,并从 Form Responses 1 查询了条形码。 E列(积压)具有一个公式,该公式仅显示未维修(消失)的产品条形码。

我将待办事项日志(仍在仓库中的产品需要维修)中的数据拉到另一个名为待办事项日志的标签中。直到我意识到 产品可以回到我们的仓库 (例如,“ 123”可以进站并固定并再次发送出去。)之后,“ 123”可以退回。再次进行更多维修。)

这带来了一个问题,因为待办事项日志现在两次显示“ 123”,并带有两个不同的问题。

我需要 Back Log (后勤记录)仅查询“ 123”,并且仅查询最新的Issue。

这是很多信息,但是我尝试了尽可能详细。谢谢您的提前帮助!

Here is the link to my workbook

1 个答案:

答案 0 :(得分:1)

我在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 <>''")

看看这是否适合您?