Страницы: 1
RSS
Если повторяется значение выделить всю строку, макрос
 
Добрый день подскажите как в коде макроса прописать поиск повторяющихся значений, если найдено повторение то всю строку выделить красным цветом. В файле примере как должно выглядеть, заранее спасибо )))
Изменено: Kentavrik7 - 18.03.2019 10:04:47
 
нужно так понимать, что файл-пример уже на подходе
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
ну как как, перебрать значения, наполняя массив или коллекцию, и проверяя на наличие в них . Если имеется, значит дубликат, помечаем и строку с первым, и текущую.
По вопросам из тем форума, личку не читаю.
 
Ігор Гончаренко,сорри вроде добавил файл а он не залился

БМВ,Подскажите как кодом написать массив который бы с столбца b наполнялся?
 
Код
=СЧЁТЕСЛИ(R1C2:RC2;RC2)>1

перепутал. поправил

Изменено: Ігор Гончаренко - 21.01.2019 00:14:19
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Ігор Гончаренко,а что это за файл? Вы не перепутали? Там просто какая то информация которою я не давал )  
 
Возможно, Игорь и перепутал файлы. Но это и не мудрено: посмотрите, сколько у него уже файлов с таким названием. А всё потому, что тем, кто задаёт вопросы, лень придумать оригинальное название для своего файла. Вот и копятся у помогающих файлы с именами "Книга", "Лист"... Только индексы меняются.
 
Юрий М, да нет не лень  даже не подумал о том что это может вызвать трудности) в следующий раз назову оригинально

Ігор Гончаренко, спасибо, я понял это условное форматирование. А можно в код это записать?
 
Так нужно?
Скрытый текст
"Все гениальное просто, а все простое гениально!!!"
 
Nordheim,Работает) Отлично спасибо) Только не понимаю как  это работает благодаря объекту "scripting.dictionary"

Еще один нюанс можно уточнить? можно чтобы он не выделял ячейки в которых пусто? в файле пример этого не происходит, а вот в рабочем он захватывает пустые
 
Привет!
Цитата
Kentavrik7 написал:
чтобы он не выделял ячейки в которых пусто
как вариант, заменить
Код
            txt = Cells(i, 2)
            If Not dic.exists(txt) Then dic.Item(txt) = txt Else Rows(i).Interior.Color = vbRed
на
Код
        If Cells(i, 2).Value <> vbNullString Then
            txt = Cells(i, 2)
            If Not dic.exists(txt) Then dic.Item(txt) = txt Else Rows(i).Interior.Color = vbRed
        End If
Или можно подсовывать диапазон без пустых значений ...
Сравнение прайсов, таблиц - без настроек
 
Inexsu,Спасибо большое)  
Данный макрос правда имеет еще один недостаток, если ячейки были форматированы в какой либо цвет он все заливки делает белыми, можно как то этого избежать? чтобы он работал как условное форматирование
 
Цитата
Kentavrik7 написал:
все заливки делает белыми
Закомментируйте строку
Код
Columns.Interior.Color = xlNone
Сравнение прайсов, таблиц - без настроек
 
Inexsu, Спасибо большое все работает как надо!
Всем спасибо)  
Страницы: 1
Наверх