Выделите ячейки в строке, где значение конкретной ячейки отличается от значения предыдущей строки

Я хотел бы применить условное форматирование, при котором каждая ячейка строки сравнивается с ячейкой в ​​предыдущей строке. Если он отличается, то строка выделяется.

Пример желаемого результата

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


person MattC    schedule 04.03.2011    source источник


Ответы (2)


Да, это возможно. Это было возможно и в предыдущих версиях Excel.

Условие очень простое.

Выберите данные, начиная со второй строки данных (третья строка, считая от заголовка), вызовите диалоговое окно форматирования условия, выберите «Формула» и введите =A3<>A2, =A3<>OFFSET(A3,-1,0), где A3 — верхнее значение. левая ячейка выделения.
Обратите внимание на отсутствие знаков доллара — Excel автоматически предложит их, поэтому удалите их соответствующим образом.

Поскольку ссылка не является абсолютной, форматирование будет правильно применяться ко всей таблице.

person GSerg    schedule 04.03.2011
comment
Эта формула страдает от проблемы, заключающейся в том, что если ячейка или строка вставляются в диапазон с условным форматированием, связь между строкой и предыдущей строкой вокруг вставки разрывается. Использование =A3<>OFFSET(A3,-1,0) переживет вставку - person chris neilsen; 04.03.2011

Вы можете сделать его еще более универсальным, например:

=INDIRECT(ADDRESS(ROW(), COLUMN()))<>INDIRECT(ADDRESS(ROW()-1, COLUMN()))

Вот как это работает:

  • =ADDRESS(ROW(), COLUMN()) относится к текущей ячейке (т. е. той, которую нужно отформатировать).
  • Точно так же =ADDRESS(ROW()-1, COLUMN()) относится к ячейке над текущей ячейкой. Тогда все, что я делаю, это сравниваю их.
person Tom    schedule 06.01.2017