Como Insertar 3 filas cuando existan cambios de datos iguales en la columna BQ (estoy gravando una macro y soy principiante)

Necesito una macro para que inserte 5 filas cuando encuentre que los datos de la columna BQ cambien, Ejemplo; En la columna BQ tengo una relación de datos que se repiten n veces, entonce necesito se inserte 5 filas cuando se presente una cambio en la columna bq

1 Respuesta

Respuesta
1

Entra al Editor de macros (con atajo ALT y F11)

Inserta un módulo y allí copia lo siguiente:

Sub insertaFilas()
'x Elsamatilde
'se recorre la col BQ desde fila 2.... AJUSTAR inicio
[BQ2].Select
'se recorre hasta encontrar celda vacía considerando fin de rango
While ActiveCell <> ""
    If ActiveCell.Value <> ActiveCell.Offset(1, 0).Value Then
        'si cambia el valor de la celda siguiente se insertan 5 filas
        ini = ActiveCell.Row + 1
        fini = ini + 4          'así insertará 5 filas
        Rows(ini & ":" & fini).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
        'se posiciona en la próxima celda con datos
        Range("BQ" & fini + 1).Select
    Else
        'pasa a la fila siguiente
        ActiveCell.Offset(1, 0).Select
    End If
'repite el bucle
Wend
MsgBox "Fin del proceso."
End Sub

Podrás ejecutarla directamente desde el Editor (botón Ejecutar) o volviendo a la hoja desde menú Macros (hay otras opciones que las tengo explicadas en la sección Macros de mi sitio.)

Observa que estoy insertando 5 filas porque así lo mencionas en la consulta.... Pero el título dice 3 filas... en ese caso la instrucción será:

 fini = ini + 2 

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas