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

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

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

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

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

todo:image_alt_text

Образец кода

from aspose.cells import SaveFormat, StyleFlag, TextAlignmentType, Workbook
# 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.
wb = Workbook(sourceDir + "sampleChangeCellsAlignmentAndKeepExistingFormatting.xlsx")
# Access first worksheet.
ws = wb.worksheets[0]
# Create cells range.
rng = ws.cells.create_range("B2:D7")
# Create style object.
st = wb.create_style()
# Set the horizontal and vertical alignment to center.
st.horizontal_alignment = TextAlignmentType.CENTER
st.vertical_alignment = TextAlignmentType.CENTER
# Create style flag object.
flag = 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.apply_style(st, flag)
# Save the workbook in XLSX format.
wb.save(outputDir + "outputChangeCellsAlignmentAndKeepExistingFormatting.xlsx", SaveFormat.XLSX)