Страницы: 1
RSS
Чередующееся выделение строк с повторяющимися значениями, для одного чертежа есть несколько версий, нужно сделать чередование фона у разных чертежей
 
Добрый день,

Не смогла найти на форуме подходящее решение, может не те ключевые слова вставляла.

Есть список чертежей, у некоторых из этих чертежей есть больше одной версии, нужно сделать чередование подсветки/форматирования строк через одну для разных номеров чертежей.

Т.е.
Колонка 1 - Колонка 2
Крыша 1 - верс. 1
Крыша 1 - верс. 2
Пол 1 - верс. 1
Стена 1 - верс. 1
Стена 2 - верс. 1
Стена 2 - верс. 2
Стена 3 - верс. 3
Стена 3 - верс. 1
Стена 4 - верс. 1
Стена 4 - верс. 2
Стена 4 - верс. 3
 
Колонка 1 - Колонка 2

Крыша 1 - верс. 1
Крыша 1 - верс. 2
Крыша 1 - верс. 3
Крыша 1 - верс. 4

Крыша 2 - верс. 1
Крыша 2 - верс. 2
Крыша 2 - верс. 3
Стена 1 - верс. 1
Стена 1 - верс. 2

Стена 2 - верс. 1
Стена 2 - верс. 2
Стена 3 - верс. 3
Стена 3 - верс. 1

Стена 4 - верс. 1
Стена 4 - верс. 2
Стена 4 - верс. 3
Потолок 1 - верс 1

я правильно понял? ;)
нужен макрос с сортировкой и циклической обработкой строк по значению в колонке 1
а чтобы он работал нужна примерная таблица от чего плясать... ;) хех...
Изменено: BodkhiSatva - 15.07.2024 18:21:01
 
del
Изменено: nilske - 16.07.2024 09:18:32
 
Цитата
написал:
в чертеже везде целое число, соответственно оно чётное или ...
Гениально, спасибо :)


Дополнение: Нужно присвоить номер для уникальных номеров чертежей и проверять его на четность/нечетность.

нашла тему про присвоение уникальных номером уникальным значениям, буду пробовать
https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=1&TID=53667


добавила вспомогательный столбец справа от основной таблицы с протянутойформулой
Код
=IFERROR(IF(MATCH(E2,$E$1:$E$21,0)=ROW(),MAX($E$1:E1)+1,VLOOKUP(E2,$A$1:L2,5,0)),0)
честно мне было лень разбираться, я ее взяла из темы выше и адоптировала под себя, вроде бы проверяет встречается ли данное значение в первый раз в столбце

добавила второй вспомогательный столбец
для первой строки со значениями:
Код
=IFERROR(IF(AND(E2<>0,M2>0),M2,0),0)
который проверяет, что номер чертежа не пустой и в первой вспомогательной колонке значение больше 0 (т.е. это впервые встречающееся уникальное значение)
для второй и остальных строк
Код
=IFERROR(IF(AND(E3<>0,M3>0),SUM($M$2:$M3,0),0))

в условное форматирование добавила
Код
=ISEVEN(IFERROR(INDEX($N$1:$N$99999,MATCH($E2,$E$1:$E$9999,0)),0))
Изменено: Build-ad - 16.07.2024 14:16:15
 
День добрый Build-ad,
Цитата
нашла тему ... буду пробовать
получается? )
...и лучше прикладывать файл-пример, а то иной раз лень его делать за вас (вопрошающих)
=ЕЧЁТН(СУММПРОИЗВ(1/СЧЁТЕСЛИ($A$2:$A2;$A$2:$A2)))
 
Я не понимаю как Ваше решение работает, что проверяет СЧЕТЕСЛИ?
Код
СЧЁТЕСЛИ($A$2:$A2;$A$2:$A2)
Изменено: Build-ad - 16.07.2024 15:27:37
 
Цитата
Я не понимаю как  ваше  решение работает, что проверяет СЧЕТЕСЛИ?
что просили
Считает уникальные значения по мере их появления
 
Павел \Ʌ/, пришлось покопаться, но нашла объяснение вот здесь https://www.planetaexcel.ru/techniques/14/187/
Спасибо Вам.
Изменено: Build-ad - 16.07.2024 15:37:15
Страницы: 1
Читают тему
Наверх