Copy Range Style Only
Contents
[
Hide
]
Copy Range Data Only and Copy Range Data with Style explained how to copy data from a range to another on its own or complete with formatting. It is also possible to copy only the formatting. This article shows how.
This example creates a workbook, populates it with data and copies a range’s style only.
- Create a range.
- Create a Style object with specified formatting attributes.
- Apply the style formatting to the range.
- Create a second range of cells.
- Copy the first range’s formatting to the second range.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from aspose.cells import BackgroundType, CellBorderType, StyleFlag, Workbook | |
from aspose.pydrawing import Color | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Instantiate a new Workbook. | |
workbook = Workbook() | |
# Get the first Worksheet Cells. | |
cells = workbook.worksheets[0].cells | |
# Fill some sample data into the cells. | |
for i in range(50): | |
for j in range(10): | |
cells.get(i, j).put_value(str(i) + "," + str(j)) | |
# Create a range (A1:D3). | |
range = cells.create_range("A1", "D3") | |
style = workbook.create_style() | |
# Specify the font attribute. | |
style.font.name = "Calibri" | |
# Specify the shading color. | |
style.foreground_color = Color.yellow | |
style.pattern = BackgroundType.SOLID | |
# Specify the border attributes. | |
style.borders.set_color(Color.blue) | |
style.borders.set_style(CellBorderType.THIN) | |
# Create the styleflag object. | |
flag1 = StyleFlag() | |
# Implement font attribute | |
flag1.font_name = True | |
# Implement the shading / fill color. | |
flag1.cell_shading = True | |
# Implment border attributes. | |
flag1.borders = True | |
# Set the Range style. | |
range.apply_style(style, flag1) | |
# Create a second range (C10:E13). | |
range2 = cells.create_range("C10", "E13") | |
# Copy the range style only. | |
range2.copy_style(range) | |
dataDir = dataDir + "copyrangestyle.out.xls" | |
# Save the excel file. | |
workbook.save(dataDir) |