Detect Merged Cells in a Worksheet
Contents
[
Hide
]
This article provides information on how to get merged cell areas in a worksheet.
Aspose.Cells for Python via .NET allows you to get merged cell areas in a worksheet. You can unmerge (split) them too. This article shows the simplest code using Aspose.Cells API to perform the task.
The component provides the Cells.get_merged_areas() method which can get all merged cells. The following code sample shows you how to detect merged cells in a worksheet.
This file contains hidden or 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 import pycore | |
from aspose.cells import CellArea, Workbook | |
# 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 | |
# Open an existing excel file | |
wkBook = Workbook(dataDir + "SampleInput.xlsx") | |
# Get a worksheet in the workbook | |
wkSheet = wkBook.worksheets.get("Sheet2") | |
# Clear its contents | |
wkSheet.cells.clear() | |
# Create an arraylist object | |
al = [] | |
# Get the merged cells list to put it into the arraylist object | |
al = wkSheet.cells.merged_cells | |
# Loop through the arraylist and get each cellarea | |
# To unmerge it | |
for i in range(len(al)): | |
ca = CellArea() | |
ca = pycore.cast(CellArea, al[i]) | |
frow = ca.start_row | |
fcol = ca.start_column | |
erow = ca.end_row | |
ecol = ca.end_column | |
trows = erow - frow + 1 | |
tcols = ecol - fcol + 1 | |
wkSheet.cells.un_merge(frow, fcol, trows, tcols) | |
dataDir = dataDir + "MergeTrial.out.xlsx" | |
# Save the excel file | |
wkBook.save(dataDir) |