Como localizar celdas combinadas y parar el proceso o que continué si no las hay

Buenos días

Me llamo Antonio y no se de VBA, pero buscando y con lo poco que se he conseguido elaborar estos dos códigos, que hacen lo que indico adelante

Un código que me dice las celdas que hay combinadas en una hoja, mediante un msgbox, el problema es que cuando no hay celdas combinadas el mensaje te sale en blanco

Si le añado el else para que haga una u otra cosa el código no funciona con las celdas combinadas

Necesito

Que si hay celdas combinadas me las indique y se pare el proceso y si no hay celdas combinadas active una macro que ya tengo y que ordena la hoja

Te adjunto código ( este código funciona pero muestra mensaje en blanco sin celdas combinadas, necesito que en ese caso no muestre mensaje y ejecute una macro)

Sub IdentificaCeldasCombinadas1()


'inhabilitamos el refresco de pantalla
Application.ScreenUpdating = False
'controlamos un posible error, pasando al siguiente registro
On Error Resume Next
'recorremos cada celda del rango utilizado en la hoja de cálculo activa.
For Each celda In ActiveSheet.UsedRange
    'verificamoss si dicha celda corresponde a una Celda combinada
    If celda.MergeCells = True Then
       'aglutinamos la dirección de la celda
        'para mostrala posteriormente en un MsgBox
        mensaje = mensaje & celda.Address & Chr(10)
    End If
Next
'Mostramos el mensaje final,
'con todas las referencias de las celdas combinadas (individualmente)
MsgBox mensaje
'activamos el refresco de pantalla
Application.ScreenUpdating = True

End Sub

Este otro código con el else ( este código ignora la primera parte y ejecuta la acción después del else, pero no muestra las celdas combinadas)

Sub IdentificaCeldasCombinadas2()

'inhabilitamos el refresco de pantalla
Application.ScreenUpdating = False
'controlamos un posible error, pasando al siguiente registro
On Error Resume Next
'recorremos cada celda del rango utilizado en la hoja de cálculo activa.
For Each celda In ActiveSheet.UsedRange
    'verificamoss si dicha celda corresponde a una Celda combinada
    If celda.MergeCells = True Then
       'aglutinamos la dirección de la celda
        'para mostrala posteriormente en un MsgBox
        mensaje = mensaje & celda.Address & Chr(10)
'Mostramos el mensaje final,
'con todas las referencias de las celdas combinadas (individualmente)
MsgBox mensaje
Application.ScreenUpdating = True
''paramos el proceso
End
'en el caso de no existir celdas combinadas
Else
'Mostramos el mensaje final,
MsgBox "sin combinadas"
'ejecutamos la macro
ordenar
''paramos el proceso para que no se repita
End
End If
Next
'activamos el refresco de pantalla
Application.ScreenUpdating = True
End Sub

Un saludo y muchas gracias

Añade tu respuesta

Haz clic para o