Вы можете установить диапазон условного форматирования:
condition.Address = new ExcelAddress("C4:C8,G1:G3");
Разделите диапазоны запятыми. Поскольку у вас есть более одного форматирования, вы должны различать правила форматирования - проще всего по их приоритету:
if(condition.Priority == 2)
condition.Address = new ExcelAddress("C4:C8,G1:G3");
Было бы более логично, конечно, отличить их по диапазонам, но, боюсь, нет функции EPPlus для проверки, пересекаются ли два диапазона. Но вы можете проверить, начинается ли Address.Address
с A1
или A3
...
Внимание: Если вы прочитаете Adress.Address
, как указано выше, вы получите обратно "C4:C8 G1:G3"
(Пробел, не запятая для адресов с более чем одним диапазоном). Так что если вы хотите работать с этим, вы должны сделать condition.Address.Address.Replace(' ',',')
. Это кажется противоречивым в EPPlus.
Документация API
Образец адреса
Пример файла cs для условного форматирования