Изменение выравнивания ячеек и сохранение существующего форматирования

Возможные сценарии использования

Иногда вам может понадобиться изменить выравнивание нескольких ячеек, но при этом также сохранить существующее форматирование. Aspose.Cells позволяет сделать это, используя свойство StyleFlag.Alignments. Если вы установите его True, изменения в выравнивании произойдут, в противном случае — нет. Обратите внимание, что объект StyleFlag передается в качестве параметра в метод Range.ApplyStyle(), который фактически применяет форматирование к диапазону ячеек.

Изменение выравнивания ячеек и сохранение существующего форматирования

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

todo:image_alt_text

Образец кода

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Load sample Excel file containing cells with formatting.
Workbook wb = new Workbook(sourceDir + "sampleChangeCellsAlignmentAndKeepExistingFormatting.xlsx");
// Access first worksheet.
Worksheet ws = wb.Worksheets[0];
// Create cells range.
Range rng = ws.Cells.CreateRange("B2:D7");
// Create style object.
Style st = wb.CreateStyle();
// Set the horizontal and vertical alignment to center.
st.HorizontalAlignment = TextAlignmentType.Center;
st.VerticalAlignment = TextAlignmentType.Center;
// Create style flag object.
StyleFlag flag = new StyleFlag();
// Set style flag alignments true. It is most crucial statement.
// Because if it will be false, no changes will take place.
flag.Alignments = true;
// Apply style to range of cells.
rng.ApplyStyle(st, flag);
// Save the workbook in XLSX format.
wb.Save(outputDir + "outputChangeCellsAlignmentAndKeepExistingFormatting.xlsx", SaveFormat.Xlsx);