Cómo unir y separar celdas

This article was translated from English: Does it need improvement?
Translated
View the article in English

por Chaknith Bin

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.



Comienza con IronXL

Comience a usar IronXL en su proyecto hoy con una prueba gratuita.

Primer Paso:
green arrow pointer


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
La fusión de celdas dentro del rango del filtro puede causar conflictos en el archivo de Excel, requiriendo ejecutar la reparación de Excel para ver la Hoja de Cálculo.

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")
VB   C#

Demostración

Demostración de fusión de celdas

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
VB   C#

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
La dirección de las celdas tiene que ser exactamente la de la región fusionada.

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")
VB   C#

Demostración

Demostración de la fusión de células
Chaknith related to Demostración

Chaknith Bin

Ingeniero de software

Chaknith es el Sherlock Holmes de los desarrolladores. La primera vez que se le ocurrió que podría tener futuro en la ingeniería de software fue cuando hacía retos de código por diversión. Su trabajo se centra en IronXL e IronBarcode, pero se enorgullece de ayudar a los clientes con todos los productos. Chaknith aprovecha sus conocimientos, adquiridos hablando directamente con los clientes, para ayudar a mejorar los propios productos. Sus comentarios anecdóticos van más allá de los tickets de Jira y apoyan el desarrollo de productos, la documentación y el marketing, para mejorar la experiencia general del cliente.Cuando no está en la oficina, se le puede encontrar aprendiendo sobre aprendizaje automático, codificación y senderismo.