Cómo unir y separar celdas
La fusión de celdas se refiere al proceso de combinar dos o más celdas adyacentes en una única celda más grande. Por otro lado, la separación de células es el proceso opuesto, en el que una célula fusionada se divide de nuevo en sus células individuales originales. Esta función permite flexibilidad, una alineación coherente y un mejor análisis de los datos.
IronXL permite combinar y separar celdas de una hoja de cálculo mediante programación.
Cómo unir y separar celdas
- Descargar biblioteca C# para combinar y separar celdas
- Cargar una hoja de cálculo existente o crear una nueva rama
- Utilizar el método Combinar para combinar el rango deseado
- Realice la fusión especificando la dirección o el índice de la región de fusión en el método Unmerge.
- Exportar la hoja de cálculo modificada
Comienza con IronXL
Comience a usar IronXL en su proyecto hoy con una prueba gratuita.
Ejemplo de fusión de celdas
El método Merge
puede utilizarse para combinar un rango de celdas. Este proceso combina las celdas sin borrar ningún valor o dato existente, pero sólo se mostrará el valor de la primera celda de la región combinada. Sin embargo, los valores de las celdas fusionadas siguen siendo accesibles en IronXL.
Atención
El siguiente ejemplo de código muestra cómo combinar un rango de celdas especificando sus direcciones.
:path=/static-assets/excel/content-code-examples/how-to/csharp-excel-merge-cells-merge.cs
using IronXL;
WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
var range = workSheet["B2:B5"];
// Merge cells B7 to E7
workSheet.Merge("B7:E7");
// Merge selected range
workSheet.Merge(range.RangeAddressAsString);
workBook.SaveAs("mergedCell.xlsx");
Imports IronXL
Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet
Private range = workSheet("B2:B5")
' Merge cells B7 to E7
workSheet.Merge("B7:E7")
' Merge selected range
workSheet.Merge(range.RangeAddressAsString)
workBook.SaveAs("mergedCell.xlsx")
Demostración
Ejemplo de recuperación de regiones fusionadas
La recuperación de regiones fusionadas es una función útil para identificar el valor mostrado en programas de visualización de hojas de cálculo como Microsoft Excel. Para obtener una lista de regiones fusionadas, puede utilizar el método GetMergedRegions
.
:path=/static-assets/excel/content-code-examples/how-to/csharp-excel-merge-cells-retrieve-merged-regions.cs
using IronXL;
using System.Collections.Generic;
using System;
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Apply merge
workSheet.Merge("B4:C4");
workSheet.Merge("A1:A4");
workSheet.Merge("A6:D9");
// Retrieve merged regions
List<IronXL.Range> retrieveMergedRegions = workSheet.GetMergedRegions();
foreach (IronXL.Range mergedRegion in retrieveMergedRegions)
{
Console.WriteLine(mergedRegion.RangeAddressAsString);
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
Ejemplo de fusión de celdas
La separación de las regiones fusionadas puede realizarse mediante dos métodos diferentes. El primer método, el más sencillo, consiste en especificar las direcciones de las celdas, como "B3:B6", que se van a combinar.
Alternativamente, también puede deshacer la fusión de celdas basándose en el índice de la región fusionada. Las regiones fusionadas se enumeran por orden cronológico. Para ello, puede recuperar primero las regiones fusionadas y pasar el índice deseado al método Unmerge
.
Atención
No es posible deshacer la fusión de pociones de la región fusionada.
:path=/static-assets/excel/content-code-examples/how-to/csharp-excel-merge-cells-unmerge.cs
using IronXL;
WorkBook workBook = WorkBook.Load("mergedCell.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Unmerge the merged region of B7 to E7
workSheet.Unmerge("B7:E7");
workBook.SaveAs("unmergedCell.xlsx");
Imports IronXL
Private workBook As WorkBook = WorkBook.Load("mergedCell.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet
' Unmerge the merged region of B7 to E7
workSheet.Unmerge("B7:E7")
workBook.SaveAs("unmergedCell.xlsx")