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

Вход

Регистрация

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

 

= Мир MS Excel/Поиск дубликатов по условию - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Поиск дубликатов по условию (Формулы/Formulas)
Поиск дубликатов по условию
monstr_ork Дата: Вторник, 31.07.2018, 22:09 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 92
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Здравствуйте, форумчане!
Подскажите пожалуйста, нужно найти количество повторяющихся значений.
Это не сложно, но загвоздка в том, что повторяющимся значением является только значение, которое повторяется в период от даты в "столбце 1" + 1 месяц..
т.е. если значение повторяется в течении 1 месяца, то это является повторяющееся значение, если нет, то не повторяется.
Пример 1234 - повторяется в массиве 4 раза, голубой относительно желтого повтор, желтый относительно зеленого не повтор, а зеленый относительно красного повтор.
И получается что повторяющихся значений только 2.
Помогите как это можно решить, формулой или VBA.
К сообщению приложен файл: 6927027.xlsx(11.3 Kb)
 
Ответить
СообщениеЗдравствуйте, форумчане!
Подскажите пожалуйста, нужно найти количество повторяющихся значений.
Это не сложно, но загвоздка в том, что повторяющимся значением является только значение, которое повторяется в период от даты в "столбце 1" + 1 месяц..
т.е. если значение повторяется в течении 1 месяца, то это является повторяющееся значение, если нет, то не повторяется.
Пример 1234 - повторяется в массиве 4 раза, голубой относительно желтого повтор, желтый относительно зеленого не повтор, а зеленый относительно красного повтор.
И получается что повторяющихся значений только 2.
Помогите как это можно решить, формулой или VBA.

Автор - monstr_ork
Дата добавления - 31.07.2018 в 22:09
Hugo Дата: Вторник, 31.07.2018, 22:59 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2862
Репутация: 641 ±
Замечаний: 0% ±

Добрый день.
Поясните вот это:
если значение повторяется в течении 1 месяца

Т.к. для одного варианта сделать макросом сравнительно легко, а вот для второго пока не знаю как... если не сортировать.
Но в любом случае от ответа зависит алгоритм.


excel@nxt.ru
webmoney: E265281470651 R418926282008 Z422237915069


Сообщение отредактировал Hugo - Вторник, 31.07.2018, 23:00
 
Ответить
СообщениеДобрый день.
Поясните вот это:
если значение повторяется в течении 1 месяца

Т.к. для одного варианта сделать макросом сравнительно легко, а вот для второго пока не знаю как... если не сортировать.
Но в любом случае от ответа зависит алгоритм.

Автор - Hugo
Дата добавления - 31.07.2018 в 22:59
krosav4ig Дата: Среда, 01.08.2018, 00:06 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1735
Репутация: 728 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Здравствуйте.
так нужно?
Код
=ЕСЛИ(СЧЁТ(1/(B$2:B2=B2)/(МУМНОЖ(--($A$2:A2*{1;-1}>=ДАТАМЕС(A2;{-1;1})*{1;-1});{1:1})=2))=1;СЧЁТ(1/($B$2:$B$45=B2)/(МУМНОЖ(--($A$2:$A$45*{1;-1}>=ДАТАМЕС(A2;{-1;1})*{1;-1});{1:1})=2))-1;"")
К сообщению приложен файл: 8404207.xlsx(12.3 Kb)


(_)Õvõ(_)
 
Ответить
СообщениеЗдравствуйте.
так нужно?
Код
=ЕСЛИ(СЧЁТ(1/(B$2:B2=B2)/(МУМНОЖ(--($A$2:A2*{1;-1}>=ДАТАМЕС(A2;{-1;1})*{1;-1});{1:1})=2))=1;СЧЁТ(1/($B$2:$B$45=B2)/(МУМНОЖ(--($A$2:$A$45*{1;-1}>=ДАТАМЕС(A2;{-1;1})*{1;-1});{1:1})=2))-1;"")

Автор - krosav4ig
Дата добавления - 01.08.2018 в 00:06
monstr_ork Дата: Среда, 01.08.2018, 06:02 | Сообщение № 4
Группа: Пользователи
Ранг: Участник
Сообщений: 92
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Hugo, я не против макроса, если это возможно сделать через него
 
Ответить
СообщениеHugo, я не против макроса, если это возможно сделать через него

Автор - monstr_ork
Дата добавления - 01.08.2018 в 06:02
Светлый Дата: Среда, 01.08.2018, 07:32 | Сообщение № 5
Группа: Проверенные
Ранг: Ветеран
Сообщений: 758
Репутация: 201 ±
Замечаний: 0% ±

Excel 2010
Пара вариантов:
Код
=СУММПРОИЗВ((B$2:B$45=B2)*(A$2:A$45>A2-30)*(A$2:A$45<A2))

Код
=СЧЁТЕСЛИМН(B$2:B$45;B2;A$2:A$45;"<"&A2;A$2:A$45;">"&A2-30)

За предыдущие 30 дней. Можно 31 день сделать. Или усложнить формулу на РОВНО месяц (с того же числа), формула будет больше.
Доб.
Код
=СУММПРОИЗВ((B$2:B$45=B2)*(A$2:A$45>ДАТА(ГОД(A2);МЕСЯЦ(A2)-1;ДЕНЬ(A2)))*(A$2:A$45<A2))

Даже более универсально:
Код
=СУММПРОИЗВ((B:B=B2)*(A:A>A2-30)*(A:A<A2))


Программировать проще, чем писать стихи.

Сообщение отредактировал Светлый - Среда, 01.08.2018, 07:45
 
Ответить
СообщениеПара вариантов:
Код
=СУММПРОИЗВ((B$2:B$45=B2)*(A$2:A$45>A2-30)*(A$2:A$45<A2))

Код
=СЧЁТЕСЛИМН(B$2:B$45;B2;A$2:A$45;"<"&A2;A$2:A$45;">"&A2-30)

За предыдущие 30 дней. Можно 31 день сделать. Или усложнить формулу на РОВНО месяц (с того же числа), формула будет больше.
Доб.
Код
=СУММПРОИЗВ((B$2:B$45=B2)*(A$2:A$45>ДАТА(ГОД(A2);МЕСЯЦ(A2)-1;ДЕНЬ(A2)))*(A$2:A$45<A2))

Даже более универсально:
Код
=СУММПРОИЗВ((B:B=B2)*(A:A>A2-30)*(A:A<A2))

Автор - Светлый
Дата добавления - 01.08.2018 в 07:32
monstr_ork Дата: Среда, 01.08.2018, 08:29 | Сообщение № 6
Группа: Пользователи
Ранг: Участник
Сообщений: 92
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
krosav4ig, Светлый, Ваши формулы работают, но применил на 6000 строк и почему-то перестало работать.
Это связано как-то с кол-вом?
 
Ответить
Сообщениеkrosav4ig, Светлый, Ваши формулы работают, но применил на 6000 строк и почему-то перестало работать.
Это связано как-то с кол-вом?

Автор - monstr_ork
Дата добавления - 01.08.2018 в 08:29
Mertc Дата: Среда, 01.08.2018, 09:50 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Это связано как-то с кол-вом?

Возможно формат ячеек "Текстовый"


Сообщение отредактировал Mertc - Среда, 01.08.2018, 09:50
 
Ответить
Сообщение
Это связано как-то с кол-вом?

Возможно формат ячеек "Текстовый"

Автор - Mertc
Дата добавления - 01.08.2018 в 09:50
китин Дата: Среда, 01.08.2018, 12:14 | Сообщение № 8
Группа: Модераторы
Ранг: Участник клуба
Сообщений: 5156
Репутация: 817 ±
Замечаний: 0% ±

Excel 2007;Excel 2010
применил на 6000 строк

а применив диапазоны в формуле поменяли? надо везде вместо
Код
$45
поставить
Код
$600


Не судите строго:я пытаюсь научиться
ЯД 41001877306852/WM R249698041931; Z239672726538
 
Ответить
Сообщение
применил на 6000 строк

а применив диапазоны в формуле поменяли? надо везде вместо
Код
$45
поставить
Код
$600

Автор - китин
Дата добавления - 01.08.2018 в 12:14
monstr_ork Дата: Среда, 01.08.2018, 13:24 | Сообщение № 9
Группа: Пользователи
Ранг: Участник
Сообщений: 92
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Товарищи, прошу прощения. Вставил формулу не в тот масив, где только уникальные значения были.
Спасибо за формулы, все работает.
[offtop]Только все равно сказали, что не так все...[/offtop]


Сообщение отредактировал monstr_ork - Среда, 01.08.2018, 13:25
 
Ответить
СообщениеТоварищи, прошу прощения. Вставил формулу не в тот масив, где только уникальные значения были.
Спасибо за формулы, все работает.
[offtop]Только все равно сказали, что не так все...[/offtop]

Автор - monstr_ork
Дата добавления - 01.08.2018 в 13:24
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Поиск дубликатов по условию (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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