Как выполнить альтернативное затенение строк с помощью Office.Взаимодействие.Excel?

#c#-4.0 #office-interop

#c #-4.0 #office-interop

Вопрос:

Я использую Office Interop через C # 4.0 для записи файла Excel. Я хотел бы затенить чередующиеся строки. Я знаю, как это сделать с помощью графического интерфейса в Excel. Я мог бы также перебирать каждую строку, чтобы обеспечить затенение, но этот вариант недопустимо медленный при больших наборах данных. Есть ли способ, используя Office.Взаимодействие.В Excel задать параметры условного форматирования, найденные в графическом интерфейсе Excel?

РЕДАКТИРОВАТЬ: Добавлено больше информации

Использование C # с .NET 4.0 и Office Interop 2007

Ответ №1:

После некоторых исследований и игр я считаю, что нашел лучший ответ. Следующий код будет чередовать цвета строк на листе.

 Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Interop.Excel.Application();
Workbook workbook = excel.Workbook.Add();
Worksheet worksheet = workbook.Worksheets.Item[1];

FormatCondition format = worksheet.Rows.FormatConditions.Add(XlFormatConditionType.xlExpression, XLFormatConditionOperator.xlEqual, "=MOD(ROW(),2) = 0");
format.Interior.Color = XlRgbColor.rgbBlue;