Удаление повторяющихся значений
Anton2201
Дата: Вторник, 24.12.2019, 13:34 |
Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
Друзья помогите пожалуйста решить вот такую проблему. Есть реестры заключенных договоров за несколько лет, при этом стоит задача посчитать сколько НОВЫХ уникальных контрагентов (по ИНН) было привлечено в текущем году, (т.е. если в предыдущем году с контрагентом был какой то договор, то в счет он не идёт). В целом тут бы хватило и стандартной функции удаления дубликатов с предварительной сортировкой списка. НО! дубликаты нужно удалять только в рамках одного города. Руками делать уже притомился, а формулу придумать не получается. Помогите пожалуйста, что то мне подсказывает, что есть простое решение...
Друзья помогите пожалуйста решить вот такую проблему. Есть реестры заключенных договоров за несколько лет, при этом стоит задача посчитать сколько НОВЫХ уникальных контрагентов (по ИНН) было привлечено в текущем году, (т.е. если в предыдущем году с контрагентом был какой то договор, то в счет он не идёт). В целом тут бы хватило и стандартной функции удаления дубликатов с предварительной сортировкой списка. НО! дубликаты нужно удалять только в рамках одного города. Руками делать уже притомился, а формулу придумать не получается. Помогите пожалуйста, что то мне подсказывает, что есть простое решение... Anton2201
Сообщение отредактировал Anton2201 - Вторник, 24.12.2019, 14:26
Ответить
Сообщение Друзья помогите пожалуйста решить вот такую проблему. Есть реестры заключенных договоров за несколько лет, при этом стоит задача посчитать сколько НОВЫХ уникальных контрагентов (по ИНН) было привлечено в текущем году, (т.е. если в предыдущем году с контрагентом был какой то договор, то в счет он не идёт). В целом тут бы хватило и стандартной функции удаления дубликатов с предварительной сортировкой списка. НО! дубликаты нужно удалять только в рамках одного города. Руками делать уже притомился, а формулу придумать не получается. Помогите пожалуйста, что то мне подсказывает, что есть простое решение... Автор - Anton2201 Дата добавления - 24.12.2019 в 13:34
YouGreed
Дата: Вторник, 24.12.2019, 13:53 |
Сообщение № 2
Группа: Проверенные
Ранг: Ветеран
Сообщений: 589
Репутация:
123
±
Замечаний:
0% ±
Excel 2010
Anton2201, Ну что же, попробую:Код
=ЕСЛИ($B2=НАИБОЛЬШИЙ(($A$2:$A$50=$A2)*($C$2:$C$50=$C2)*$B$2:$B$50;1);)
Формула массива, вводится одновременным нажатием Ctrl+Shift+Enter Собственно, "Ложь" можно удалять, там где "0", наши договора. Забыл о критерии в "текущем году".Код
=ЕСЛИ($B6=НАИБОЛЬШИЙ((($A$2:$A$50=$A6)*($C$2:$C$50=$C6)*($B$2:$B$50>=ДАТА(2019;1;1))*$B$2:$B$50);1);)
Anton2201, Ну что же, попробую:Код
=ЕСЛИ($B2=НАИБОЛЬШИЙ(($A$2:$A$50=$A2)*($C$2:$C$50=$C2)*$B$2:$B$50;1);)
Формула массива, вводится одновременным нажатием Ctrl+Shift+Enter Собственно, "Ложь" можно удалять, там где "0", наши договора. Забыл о критерии в "текущем году".Код
=ЕСЛИ($B6=НАИБОЛЬШИЙ((($A$2:$A$50=$A6)*($C$2:$C$50=$C6)*($B$2:$B$50>=ДАТА(2019;1;1))*$B$2:$B$50);1);)
YouGreed
Сообщение отредактировал YouGreed - Вторник, 24.12.2019, 14:07
Ответить
Сообщение Anton2201, Ну что же, попробую:Код
=ЕСЛИ($B2=НАИБОЛЬШИЙ(($A$2:$A$50=$A2)*($C$2:$C$50=$C2)*$B$2:$B$50;1);)
Формула массива, вводится одновременным нажатием Ctrl+Shift+Enter Собственно, "Ложь" можно удалять, там где "0", наши договора. Забыл о критерии в "текущем году".Код
=ЕСЛИ($B6=НАИБОЛЬШИЙ((($A$2:$A$50=$A6)*($C$2:$C$50=$C6)*($B$2:$B$50>=ДАТА(2019;1;1))*$B$2:$B$50);1);)
Автор - YouGreed Дата добавления - 24.12.2019 в 13:53
Pelena
Дата: Вторник, 24.12.2019, 14:01 |
Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 19176
Репутация:
4413
±
Замечаний:
±
Excel 365 & Mac Excel
Не уверена, что правильно поняла. Такой вариантКод
=СЧЁТЕСЛИМН($A$2:$A2;A2;$C$2:$C2;C2;$B$2:$B2;">="&ДАТА(2019;1;1))*(B2>=ДАТА(2019;1;1))=1
Там, где ЛОЖЬ, удалить
Не уверена, что правильно поняла. Такой вариантКод
=СЧЁТЕСЛИМН($A$2:$A2;A2;$C$2:$C2;C2;$B$2:$B2;">="&ДАТА(2019;1;1))*(B2>=ДАТА(2019;1;1))=1
Там, где ЛОЖЬ, удалить Pelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816
Ответить
Сообщение Не уверена, что правильно поняла. Такой вариантКод
=СЧЁТЕСЛИМН($A$2:$A2;A2;$C$2:$C2;C2;$B$2:$B2;">="&ДАТА(2019;1;1))*(B2>=ДАТА(2019;1;1))=1
Там, где ЛОЖЬ, удалить Автор - Pelena Дата добавления - 24.12.2019 в 14:01
Anton2201
Дата: Вторник, 24.12.2019, 14:05 |
Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
YouGreed, спасибо за попытку, но нет... Я вложил заново файл где оставил только то, что должно остаться после удаления
YouGreed, спасибо за попытку, но нет... Я вложил заново файл где оставил только то, что должно остаться после удаления Anton2201
Ответить
Сообщение YouGreed, спасибо за попытку, но нет... Я вложил заново файл где оставил только то, что должно остаться после удаления Автор - Anton2201 Дата добавления - 24.12.2019 в 14:05
Anton2201
Дата: Вторник, 24.12.2019, 14:09 |
Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
Pelena, вроде похоже на правду, но видимо и я в первом варианте неправильно результат выложил в файле. Должны удалиться повторения которые идут позже чем первый, при этом в каждом городе отдельно. В вашем варианте в строке 8 тоже нужно удалить т.к. в 18 году договор уже был с контрагентом
Pelena, вроде похоже на правду, но видимо и я в первом варианте неправильно результат выложил в файле. Должны удалиться повторения которые идут позже чем первый, при этом в каждом городе отдельно. В вашем варианте в строке 8 тоже нужно удалить т.к. в 18 году договор уже был с контрагентом Anton2201
Сообщение отредактировал Anton2201 - Вторник, 24.12.2019, 14:13
Ответить
Сообщение Pelena, вроде похоже на правду, но видимо и я в первом варианте неправильно результат выложил в файле. Должны удалиться повторения которые идут позже чем первый, при этом в каждом городе отдельно. В вашем варианте в строке 8 тоже нужно удалить т.к. в 18 году договор уже был с контрагентом Автор - Anton2201 Дата добавления - 24.12.2019 в 14:09
YouGreed
Дата: Вторник, 24.12.2019, 14:12 |
Сообщение № 6
Группа: Проверенные
Ранг: Ветеран
Сообщений: 589
Репутация:
123
±
Замечаний:
0% ±
Excel 2010
Anton2201, А если так?Код
=ЕСЛИ($B2=НАИБОЛЬШИЙ((($C$2:$C$50=$C2)*($B$2:$B$50>=ДАТА(2019;1;1))*$B$2:$B$50);1);)
Код
=ЕСЛИ($B2=МАКС((($C$2:$C$50=$C2)*($B$2:$B$50>=ДАТА(2019;1;1))*$B$2:$B$50));)
Anton2201, А если так?Код
=ЕСЛИ($B2=НАИБОЛЬШИЙ((($C$2:$C$50=$C2)*($B$2:$B$50>=ДАТА(2019;1;1))*$B$2:$B$50);1);)
Код
=ЕСЛИ($B2=МАКС((($C$2:$C$50=$C2)*($B$2:$B$50>=ДАТА(2019;1;1))*$B$2:$B$50));)
YouGreed
Сообщение отредактировал YouGreed - Вторник, 24.12.2019, 14:15
Ответить
Сообщение Anton2201, А если так?Код
=ЕСЛИ($B2=НАИБОЛЬШИЙ((($C$2:$C$50=$C2)*($B$2:$B$50>=ДАТА(2019;1;1))*$B$2:$B$50);1);)
Код
=ЕСЛИ($B2=МАКС((($C$2:$C$50=$C2)*($B$2:$B$50>=ДАТА(2019;1;1))*$B$2:$B$50));)
Автор - YouGreed Дата добавления - 24.12.2019 в 14:12
Anton2201
Дата: Вторник, 24.12.2019, 14:17 |
Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
YouGreed, у меня в Москве 5 контрагентов получилось а у вас 6... а по Ульяновску наоборот у меня 9 а у вас 8..
YouGreed, у меня в Москве 5 контрагентов получилось а у вас 6... а по Ульяновску наоборот у меня 9 а у вас 8.. Anton2201
Сообщение отредактировал Anton2201 - Вторник, 24.12.2019, 14:18
Ответить
Сообщение YouGreed, у меня в Москве 5 контрагентов получилось а у вас 6... а по Ульяновску наоборот у меня 9 а у вас 8.. Автор - Anton2201 Дата добавления - 24.12.2019 в 14:17
YouGreed
Дата: Вторник, 24.12.2019, 14:20 |
Сообщение № 8
Группа: Проверенные
Ранг: Ветеран
Сообщений: 589
Репутация:
123
±
Замечаний:
0% ±
Excel 2010
Anton2201, Потому что, Вы оставляется первое попадание в 2019 году, а я оставляю последнее. Т.е. 05.05.2019 заключили договори в Нижнем,а 10.05. в Москве. Моя формула оставляет Москву, а нужно Нижний.
Anton2201, Потому что, Вы оставляется первое попадание в 2019 году, а я оставляю последнее. Т.е. 05.05.2019 заключили договори в Нижнем,а 10.05. в Москве. Моя формула оставляет Москву, а нужно Нижний. YouGreed
Ответить
Сообщение Anton2201, Потому что, Вы оставляется первое попадание в 2019 году, а я оставляю последнее. Т.е. 05.05.2019 заключили договори в Нижнем,а 10.05. в Москве. Моя формула оставляет Москву, а нужно Нижний. Автор - YouGreed Дата добавления - 24.12.2019 в 14:20
Anton2201
Дата: Вторник, 24.12.2019, 14:22 |
Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
Забыл о критерии в "текущем году". =ЕСЛИ($B6=НАИБОЛЬШИЙ((($A$2:$A$50=$A6)*($C$2:$C$50=$C6)*($B$2:$B$50>=ДАТА(2019;1;1))*$B$2:$B$50);1);)
Вот это прям то, что надо, только вы удаляете контрагентов в 2018 году, а надо наоборот если он позже встретился, то его и удалять. надо попасть вот в это...
Забыл о критерии в "текущем году". =ЕСЛИ($B6=НАИБОЛЬШИЙ((($A$2:$A$50=$A6)*($C$2:$C$50=$C6)*($B$2:$B$50>=ДАТА(2019;1;1))*$B$2:$B$50);1);)
Вот это прям то, что надо, только вы удаляете контрагентов в 2018 году, а надо наоборот если он позже встретился, то его и удалять. надо попасть вот в это...Anton2201
Сообщение отредактировал Anton2201 - Вторник, 24.12.2019, 14:24
Ответить
Сообщение Забыл о критерии в "текущем году". =ЕСЛИ($B6=НАИБОЛЬШИЙ((($A$2:$A$50=$A6)*($C$2:$C$50=$C6)*($B$2:$B$50>=ДАТА(2019;1;1))*$B$2:$B$50);1);)
Вот это прям то, что надо, только вы удаляете контрагентов в 2018 году, а надо наоборот если он позже встретился, то его и удалять. надо попасть вот в это...Автор - Anton2201 Дата добавления - 24.12.2019 в 14:22
YouGreed
Дата: Вторник, 24.12.2019, 14:32 |
Сообщение № 10
Группа: Проверенные
Ранг: Ветеран
Сообщений: 589
Репутация:
123
±
Замечаний:
0% ±
Excel 2010
Anton2201, Как попасть в 05.05.2019 11111111 Москва, если договора есть от 01.05.2019 в другом городе... Этого не пойму.
Anton2201, Как попасть в 05.05.2019 11111111 Москва, если договора есть от 01.05.2019 в другом городе... Этого не пойму. YouGreed
Ответить
Сообщение Anton2201, Как попасть в 05.05.2019 11111111 Москва, если договора есть от 01.05.2019 в другом городе... Этого не пойму. Автор - YouGreed Дата добавления - 24.12.2019 в 14:32
Anton2201
Дата: Вторник, 24.12.2019, 14:54 |
Сообщение № 11
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
YouGreed, Я же пишу, что повторы только в рамках каждого города отдельно.
YouGreed, Я же пишу, что повторы только в рамках каждого города отдельно. Anton2201
Ответить
Сообщение YouGreed, Я же пишу, что повторы только в рамках каждого города отдельно. Автор - Anton2201 Дата добавления - 24.12.2019 в 14:54
Pelena
Дата: Вторник, 24.12.2019, 14:58 |
Сообщение № 12
Группа: Админы
Ранг: Местный житель
Сообщений: 19176
Репутация:
4413
±
Замечаний:
±
Excel 365 & Mac Excel
Если даты отсортированы по возрастанию в пределах города, как в примере, то можно такКод
=(СЧЁТЕСЛИМН($A$2:$A2;A2;$C$2:$C2;C2)=1)*($B2>=ДАТА(2019;1;1))
Если даты отсортированы по возрастанию в пределах города, как в примере, то можно такКод
=(СЧЁТЕСЛИМН($A$2:$A2;A2;$C$2:$C2;C2)=1)*($B2>=ДАТА(2019;1;1))
Pelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816
Ответить
Сообщение Если даты отсортированы по возрастанию в пределах города, как в примере, то можно такКод
=(СЧЁТЕСЛИМН($A$2:$A2;A2;$C$2:$C2;C2)=1)*($B2>=ДАТА(2019;1;1))
Автор - Pelena Дата добавления - 24.12.2019 в 14:58
Anton2201
Дата: Вторник, 24.12.2019, 15:28 |
Сообщение № 13
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
Pelena, ОТЛИЧНО!!! Работает!!! СПАСИБО!
Pelena, ОТЛИЧНО!!! Работает!!! СПАСИБО! Anton2201
Ответить
Сообщение Pelena, ОТЛИЧНО!!! Работает!!! СПАСИБО! Автор - Anton2201 Дата добавления - 24.12.2019 в 15:28