Detectar Celdas Fusionadas en una Hoja de Trabajo
Este artículo proporciona información sobre cómo obtener áreas de celdas fusionadas en una hoja de cálculo.
Aspose.Cells te permite obtener áreas de celdas fusionadas en una hoja de cálculo. También puedes desagruparlas (dividirlas). Este artículo muestra el código más simple usando la API de Aspose.Cells para realizar la tarea.
El componente proporciona el método Cells.GetMergedAreas() que puede obtener todas las celdas combinadas. El siguiente ejemplo de código muestra cómo detectar celdas combinadas en una hoja de cálculo.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Instantiate a new Workbook | |
// Open an existing excel file | |
Workbook wkBook = new Workbook(dataDir + "SampleInput.xlsx"); | |
// Get a worksheet in the workbook | |
Worksheet wkSheet = wkBook.Worksheets["Sheet2"]; | |
// Clear its contents | |
wkSheet.Cells.Clear(); | |
// Get merged areas | |
CellArea[] areas = wkSheet.Cells.GetMergedAreas(); | |
// Define some variables | |
int frow, fcol, erow, ecol, trows, tcols; | |
// Loop through the arraylist and get each cellarea | |
// To unmerge it | |
for (int i = 0; i < areas.Length; i++) | |
{ | |
frow = areas[i].StartRow; | |
fcol = areas[i].StartColumn; | |
erow = areas[i].EndRow; | |
ecol = areas[i].EndColumn; | |
trows = erow - frow + 1; | |
tcols = ecol - fcol + 1; | |
wkSheet.Cells.UnMerge(frow, fcol, trows, tcols); | |
} | |
dataDir = dataDir + "MergeTrial.out.xlsx"; | |
// Save the excel file | |
wkBook.Save(dataDir); |