На листе, который имеет два столбца, первый представляет строку, а второй представляет некоторое значение поля, связанное с этой строкой, как показано ниже. У меня примерно 30 000 таких строк.

Мой вопрос, как я могу удалить дубликаты с наименьшим значением поля?

Например, я хотел бы избавиться от (F, 4) при сохранении F, 5)

   A   B
1  F   5
2  F   4
3  G   2
4  E   1
5  G   3
6  E   2

2 ответа2

0

Сколько букв в столбце? Если бы не много, мое быстрое грязное решение было бы:

  • в C1 напишите: =IF(A1="F";B1;"")
  • в D1 напишите: =B1=MIN(C:C)

затем быстро отфильтруйте по столбцу D, показывая только "ИСТИНА", и удалите эту строку. Повторите эти действия для всех остальных букв (в первых формулах измените кавычки в A1="F").

Если в столбце A много значений, Pivot на другом листе с VLOOKUP оттуда на 1-м листе подойдет. Хотя это не может быть сделано абстрактно, сделано в электронной таблице Google Docs. Не против скопировать его для собственного использования, также вы можете экспортировать в Excel и ODF.

0

Вы можете использовать любую из следующих формул (созданных в C1 и скопированных):

=SUMPRODUCT(--(A:A=A1),--(B:B>B1))

или же

=COUNTIFS(A:A,"="&A1,B:B,">"&B1)

Это приводит к подсчету того, сколько записей имеют большие значения столбца B, чем текущая строка с соответствующим столбцом A. Вы можете удалить все строки с ненулевыми значениями.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .