Вставка и удаление строк не приводит к фрагментации условного форматирования.
Причина - копирование / вставка между ячейками или строками с использованием стандартного копирования / вставки. Исправление заключается в том, чтобы всегда использовать значение вставки или формулу вставки. На месте назначения щелкните правой кнопкой мыши и в разделе «Параметры вставки» появятся 123 (значения) и f (формулы). Не копируйте / вставляйте форматирование, поскольку это приводит к тому, что условия копируются / вставляются, а иногда они будут фрагментированы.
Когда вы делаете стандартное копирование / вставку, оно также копирует условные формулы ячейки. Допустим, у вас есть два правила:
1) Сделайте $ A $ 1: $ A $ 30 красным
2) Сделайте $ B $ 1: $ B $ 30 синим.
Теперь выберите A10: B10 и скопируйте / вставьте его в A20: B20. Excel будет удалять условное форматирование для A20: B20 из правил, которые применяются к этим ячейкам, и добавлять новые правила, имеющие форматирование для A20: B20. Вы в конечном итоге с четырьмя правилами.
1) Make = $ A $ 20 red
2) Make = $ B $ 20 blue
3) Make = $ A $ 1: $ A $ 19, $ A $ 21: $ A $ 30 red
4) Make = $ B $ 1: $ B $ 19, $ B 21 $: $ B $ 30 синий
Если бы вы скопировали / вставили только A10 в A20, Excel заметил бы одно и то же правило, применяемое как к источнику, так и к месту назначения, и не фрагментирует правила. Excel не достаточно умен, чтобы понять, как избежать фрагментации, когда копирование / вставка влияет на два или более условных формата.
Вставка и удаление строк не приводит к фрагментации, так как Excel просто расширяет или сокращает правило (правила) условия, которые охватывают область, в которую вы вставили или удалили строку.
Кто-то предложил использовать $ Q: $ Q вместо $ Q $ 1: $ Q $ 30. Это не поможет, и вы все равно получите фрагментацию при копировании / вставке форматирования ячеек, как указано выше.
Была такая же проблема при применении условного формата к столбцу таблицы. При добавлении строк я обнаружил, что лучше всего применять правило ко всему столбцу, используя тот
$A:$A
или иной столбец.источник
(Это обходной путь, поэтому я собирался поместить его в качестве комментария, но мне не хватает репутации.)
К сожалению, кажется, что вы обречены на очистку наборов правил, когда они становятся грязными.
Самый простой способ сделать это - создать рабочий лист с требуемым форматированием, но без данных. Это может быть в той же книге, что и исходный лист, или в другой книге, которую вы храните в качестве шаблона.
Если вам нужно выполнить очистку, перейдите на этот рабочий лист, щелкните правой кнопкой мыши кнопку « Выбрать все» , выберите « Редактор формата» , затем нажмите кнопку « Выбрать все» на исходном рабочем листе. Форматы перезаписываются неиспользованной версией.
источник
Копирование / вставка / вырезание / вставка ячеек вручную вызывает проблему, и ее трудно избежать.
Проблема решена через макрос VBA.
Вместо того, чтобы копировать / вставлять / вырезать / вставлять ячейки вручную, я делаю это с помощью макроса Excel, который сохраняет диапазоны ячеек (активируется с помощью кнопки).
Чтобы сбросить форматирование (не очень нужно):
источник