Цветовая заливка Excel 2013 при изменении номера в столбце

mhyvarinen спросил: 28 апреля 2018 в 08:29 в: excel

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

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

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

Thx для вашего времени


2 ответа

Есть решение
teylyn ответил: 28 апреля 2018 в 08:42

Это можно сделать с условным форматированием. Используйте правило, которое сравнивает текущую ячейку с ячейкой в ​​строке выше и форматирует, если они разные. Обратите внимание, что вам нужно будет использовать относительные ссылки без знака $. На скриншоте ниже условный формат применяется от строк 2 до 19, а в строке 2 формула сравнивает A2 с A1, в следующей строке сравнивает A3 с A2 и так далее. Если две ячейки различны, ячейка изменит цвет.

mhyvarinen ответил: 28 апреля 2018 в 09:09
Огромное спасибо! Он отлично работал и облегчил мне жизнь. Ты мой герой! Ура!
teylyn ответил: 28 апреля 2018 в 09:16
Спасибо за ответ. Завершите работу и отметьте ответ, как описано в туре .
mhyvarinen ответил: 28 апреля 2018 в 09:37
Готово! Спасибо еще раз за помощь.
Crapsy ответил: 28 апреля 2018 в 08:43

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

Sub highlightChange()
Dim preVal As Integer
preVal = 0For Each o In Range("A:A")
    'Go through column
   If o.Value <> preVal Then
        o.Interior.Color = vbRed 'Color the selection
   End If
   preVal = o.Value
Next o
End Sub

Может быть другое решение без VBA, однако довольно просто и практично использовать макрос.

teylyn ответил: 28 апреля 2018 в 08:44
это можно сделать без VBA, поэтому он может работать на любом устройстве, а не только на рабочем столе.