Vba determina si hay celdas combinadas en el área de selección de Excel
El código y los comentarios son los siguientes:
Sub main()
Si Selection.MergeCells = True Then'Use Mergecells para determinar si hay celdas fusionadas
MsgBox "¡Hay celdas combinadas!"
Else
MsgBox "¡No hay celdas combinadas!"
Finalizar si p>
End Sub
Conocimientos relevantes sobre Mergecells utilizados en este ejemplo:
Devuelve o establece un valor que determina si las celdas que contienen el mismo contenido deben agruparse en varias filas o columnas en una sola unidad.
object.MergeCells [=value]
La sintaxis del atributo MergeCells incluye las siguientes partes:
objeto
Una expresión de objeto , Su valor es un objeto en la lista "Se aplica a".
valor
Un número entero o constante que especifica la agrupación de unidades (fusión). Como se especifica en el valor de configuración.
Valor establecido
El valor de configuración del valor es el siguiente:
Descripción del valor constante
flexMergeNever 0 no se muestra. Las celdas que contienen el mismo contenido no se agrupan. Esta es la configuración predeterminada.
flexMergeFree 1 Gratis. Las celdas que contienen el mismo contenido siempre se combinan.
flexMergeRestrictRows 2 restringen filas. Solo se fusionan las celdas adyacentes en la fila (a la izquierda de la celda actual) que contienen el mismo contenido.
flexMergeRestrictColumns 3 columnas restringidas. Solo se fusionan las celdas adyacentes de la columna (hacia la celda actual) que contienen el mismo contenido.
flexMergeRestrictAmbos 4 Restringir filas y columnas. Sólo se fusionan las celdas que contienen el mismo contenido en una fila (hacia la izquierda) o en una columna (hacia arriba).
Descripción
La capacidad de fusionar celdas te permite mostrar datos de forma clara y concisa. Las celdas se pueden utilizar junto con la clasificación y las funciones de orden de columnas de MSHFlexGrid.
Para utilizar las capacidades de combinación de celdas de MSHFlexGrid:
Establezca MergeCells en un valor distinto de 0. (La diferencia entre establecer valores se explica en el ejemplo).
Establezca las propiedades de matriz de MergeRow y MergeCol en True para fusionar filas y columnas.
Cuando se utiliza la capacidad de combinación de celdas, MSHFlexGrid combina celdas que contienen el mismo contenido. Cada vez que cambia el contenido de una celda, la combinación se actualiza automáticamente.
Cuando MergeCells se establece en un valor distinto de 0 (sin visualización), la selección resaltada se desactiva automáticamente. Esto se hace para acelerar los redibujos, pero también porque las selecciones que incluyen rangos de celdas fusionados pueden generar resultados impredecibles.