Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Удаление повторяющихся значений - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Удаление повторяющихся значений (Формулы/Formulas)
Удаление повторяющихся значений
Anton2201 Дата: Вторник, 24.12.2019, 13:34 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Друзья помогите пожалуйста решить вот такую проблему.

Есть реестры заключенных договоров за несколько лет, при этом стоит задача посчитать сколько НОВЫХ уникальных контрагентов (по ИНН) было привлечено в текущем году, (т.е. если в предыдущем году с контрагентом был какой то договор, то в счет он не идёт).
В целом тут бы хватило и стандартной функции удаления дубликатов с предварительной сортировкой списка. НО! дубликаты нужно удалять только в рамках одного города.
Руками делать уже притомился, а формулу придумать не получается.
Помогите пожалуйста, что то мне подсказывает, что есть простое решение...
К сообщению приложен файл: 4069030.xlsx (13.8 Kb)


Сообщение отредактировал 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);)
К сообщению приложен файл: 4910156.xlsx (15.8 Kb)


Сообщение отредактировал 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

Там, где ЛОЖЬ, удалить
К сообщению приложен файл: 4779808.xlsx (15.8 Kb)


"Черт возьми, Холмс! Но как??!!"
Ю-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, спасибо за попытку, но нет...
Я вложил заново файл где оставил только то, что должно остаться после удаления
К сообщению приложен файл: 4798187.xlsx (13.8 Kb)
 
Ответить
СообщениеYouGreed, спасибо за попытку, но нет...
Я вложил заново файл где оставил только то, что должно остаться после удаления

Автор - Anton2201
Дата добавления - 24.12.2019 в 14:05
Anton2201 Дата: Вторник, 24.12.2019, 14:09 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Pelena, вроде похоже на правду, но видимо и я в первом варианте неправильно результат выложил в файле.
Должны удалиться повторения которые идут позже чем первый, при этом в каждом городе отдельно.

В вашем варианте в строке 8 тоже нужно удалить т.к. в 18 году договор уже был с контрагентом
К сообщению приложен файл: 4677548.xlsx (13.8 Kb)


Сообщение отредактировал 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));)
К сообщению приложен файл: 8274747.xlsx (15.7 Kb)


Сообщение отредактировал 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..


Сообщение отредактировал 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
Дата добавления - 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 году, а надо наоборот если он позже встретился, то его и удалять.

надо попасть вот в это...
К сообщению приложен файл: 3284169.xlsx (13.8 Kb)


Сообщение отредактировал 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
Дата добавления - 24.12.2019 в 14:32
Anton2201 Дата: Вторник, 24.12.2019, 14:54 | Сообщение № 11
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
YouGreed, Я же пишу, что повторы только в рамках каждого города отдельно.
 
Ответить
Сообщение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))
К сообщению приложен файл: 3479430.xlsx (15.6 Kb)


"Черт возьми, Холмс! Но как??!!"
Ю-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
Дата добавления - 24.12.2019 в 15:28
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Удаление повторяющихся значений (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!