У меня есть список данных около 32000 элементов в столбце А. Каждый из этих элементов имеет много дубликатов, некоторые из которых имеют 1 дубликат, примерно до 5 или около того макс. Каждая ячейка имеет несколько sku, разделенных на /.

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

Пример:

1001/1002/1003
1001/1002/1003
1001/1002/1003

Все 3 из этих ячеек станут зелеными, есть 2 косых черты и 2 дубликата каждой ячейки (или 3 дублированных ячейки)

1001/1002/1003
1001/1002/1003

Оба они станут оранжевыми, так как есть 2 слеша и 3 записи. Они также были бы оранжевого цвета, если было 4 записи, или любое число, отличное от 3.

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

Я предпочитаю избегать VB в этом, так как он используется многими пользователями, которые абсолютно не знают, как использовать Excel, но при необходимости я могу использовать VB.

2 ответа2

3

Я считаю, что это можно сделать с помощью условного форматирования. Поскольку два цвета являются точными противоположностями, вы можете либо покрасить все ячейки в 1 цвет и определить (и изменить цвет) для других условий, либо использовать 2 правила условного формата.

В любом случае, формула для определения, какие клетки должны быть окрашены в зеленый цвет. Предполагается, что данные находятся в столбце A, а активной ячейкой является A2.

=COUNTIF(A:A,A2)=(LEN(A2)-LEN(SUBSTITUTE(A2,"/","")))+1

и если вам нужно обратное, чтобы обнаружить оранжевый:

=COUNTIF(A:A,A2)<>(LEN(A2)-LEN(SUBSTITUTE(A2,"/","")))+1

0

Формула, которую я в итоге использовал, была

=IF(LEN(A2)-LEN(SUBSTITUTE(A2,"/",""))+1=COUNTIF($A:$A,A2),"OK","BAD")

Помещенный в Ячейку B2 - затем заполненный - я тогда отфильтровал столбец B OK или BAD, и просто вручную раскрасил основной столбец A.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .