Обнаружение дубликатов в Google Sheet с ARRAYFORMULA - PullRequest
1 голос
/ 30 апреля 2020

Я пытаюсь создать лист Google, который выглядит следующим образом:

+-------------------+-----------+
|Email              |Duplicate? |
+-------------------+-----------+
|banana@example.com |No         |
|orange@example.com |No         |
|peach@example.com  |No         |
|banana@example.com |Yes        |
|banana@example.com |Yes        |
|apple@example.com  |No         |
|peach@example.com  |Yes        |
+-------------------+-----------+

В моем примере первый столбец заполняется вручную несколькими адресами электронной почты. Во втором столбце должна быть формула, которая возвращает Yes, если значение было продублировано ранее в столбце, и No, если его не было.

Пока что я ' мы пытаемся использовать VLOOKUP и INDIRECT внутри ARRAYFORMULA для выполнения sh этого. Если я смогу получить это, чтобы успешно вернуть значение, тогда я смогу построить вокруг него IF, чтобы вернуть нужные мне строки. Тем не менее, это не работает.

=ARRAYFORMULA(VLOOKUP(B2:B, INDIRECT("B1:B" & ROW(B2:B) - 1), 1, FALSE))

Я также пытался использовать COUNTIF, но, похоже, тоже не очень хорошо с ARRAYFORMULA.

I Буду очень признателен за понимание того, что мне не хватает. Я думаю о ARRAYFORMULA неправильно? INDIRECT не работает так, как я думаю?

1 Ответ

1 голос
/ 30 апреля 2020

попробовать:

=ARRAYFORMULA(IF(A1:A<>"", IF(
 (COUNTIFS(A1:A, A1:A, ROW(A1:A), "<="&ROW(A1:A))>1)*
 (COUNTIF( A1:A, A1:A)>1), "yes", "no"), ))

enter image description here

...