Запрос только самого последнего значения, если существуют дубликаты - PullRequest
0 голосов
/ 28 декабря 2018

Я работаю на складе и разрабатываю систему инвентаризации.Когда продукты приходят, это потому, что они повреждены.У меня есть один человек, который заполняет строку в Google Sheets по прибытии продукта ( Sheet1 в ссылке на книгу ниже).В основном мне нужны штрих-код, выпуск и дата из этого листа).

Далее механик исправляет продукт и заполняет форму Google со своим именем и штрих-кодом продукта;ответы Форма ответов 1 в ссылке на рабочую книгу ниже.

Затем я перетаскиваю данные для всех входящих продуктов из Лист1 на новую вкладку (Штрих-коды In / Out (ссылка на книгу ниже), запрашивая штрих-код, выпуск и дату.Я извлекаю данные для всех исходящих продуктов в другом столбце этой вкладки, запрашивая штрих-код из Ответов формы 1 .Столбец E (Журнал невыполненных работ) имеет формулу, которая показывает только штрих-коды продуктов, которые не были отремонтированы (ушли в прошлое).

Я перетаскиваю данные о том, что находится в моем журнале Back (продукты, которые все еще находятся на складе, нуждающемся в ремонте), на другую вкладку с именем Back Log .Это работало отлично, пока я не понял, что продукты могут возвращаться на наш склад (т. Е. «123» может прийти, исправить и отправить обратно. «123» может вернуться снова длябольше ремонтов.)

Это создает проблему, потому что Back Log теперь показывает «123» дважды с двумя разными проблемами.

Мне нужно Back Log только для запроса «123» и только с самой последней проблемой.

Это много информации, но я старался быть максимально подробным.Заранее спасибо за помощь!

Вот ссылка на мою рабочую книгу

1 Ответ

0 голосов
/ 28 декабря 2018

В 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 <>''")

Посмотрите, работает ли это для вас?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...