¿Dividir el rango por otro rango entre ellos? Vba

¿Dividir el rango por otro rango entre ellos? Vba

Digamos que tengo el rango B1:BF1

Y otro, rango variable (es decir, E1:W1)

Quiero dividir el Superior con el inferior, para que el Resultado se vea así

B1:D1, X1:BF1

¿Es posible guardar un rango dividido como ese en una variable?

Respuesta1

Supongo que tendrás que hacer alguna Intersectoperación inversa. Lamentablemente no conozco ninguna operación de este tipo.

A continuación se incluye un pequeño fragmento de código que comprobará los rangos y verá dónde se superponen. Si no se superponen, se creará un nuevo rango.

Sub Test()

Dim Rng1 As Range, Rng2 As Range, Rng3 As Range, Cl As Range

With ThisWorkbook.Sheets("Sheet1")
    Set Rng1 = .Range("B1:BF1")
    Set Rng2 = .Range("E1:W1")
    For Each Cl In Rng1
        If Intersect(Rng2, Cl) Is Nothing Then
            If Not Rng3 Is Nothing Then
                Set Rng3 = Union(Rng3, Cl)
            Else
                Set Rng3 = Cl
            End If
        End If
    Next Cl

Debug.Print Rng3.Address
End With

End Sub

ingrese la descripción de la imagen aquí

Espero que eso te ayude a comenzar.

información relacionada