Cómo unir y separar celdas

Chaknith related to Cómo unir y separar celdas
Chaknith Bin
19 de julio, 2020
Actualizado 10 de diciembre, 2024
Compartir:
This article was translated from English: Does it need improvement?
Translated
View the article in English

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 se puede utilizar 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")
$vbLabelText   $csharpLabel

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, puedes 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
$vbLabelText   $csharpLabel

Ejemplo de fusión de celdas

La separación de las regiones fusionadas puede realizarse mediante dos métodos diferentes. El primer y más sencillo método implica especificar las direcciones de las celdas, como "B3:B6", para descombinar.

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 hacer esto, primero puedes recuperar las regiones combinadas y pasar el índice deseado al método Unmerge.

{i:(La dirección de las celdas debe ser de la región fusionada exacta.

No es posible desunir porciones 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")
$vbLabelText   $csharpLabel

Demostración

Demostración de la fusión de células
Chaknith related to Demostración
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.