Saltar al contenido principal

¿Cómo insertar filas en blanco cuando el valor cambia en Excel?

Supongamos que tiene un rango de datos y ahora desea insertar filas en blanco entre los datos cuando el valor cambia, de modo que pueda separar los mismos valores secuenciales en una columna como se muestra a continuación. En este artículo te hablaré de algunos trucos para que resuelvas este problema.

Insertar filas en blanco cuando el valor cambia con la función Subtotal

Insertar filas en blanco cuando el valor cambia con columnas auxiliares

Inserte filas en blanco cuando el valor cambie con el código VBA

Inserte un número específico de filas en blanco cuando el valor cambie con una característica poderosa


Insertar filas en blanco cuando el valor cambia con la función Subtotal

Con la Total característica, puede insertar filas en blanco entre los datos cuando el valor cambia según los siguientes pasos:

1. Seleccione el rango de datos que desea utilizar.

2. Hacer clic Datos > Total para abrir el Total cuadro de diálogo, y en el Total cuadro de diálogo, haga las siguientes opciones:

1: Seleccione el nombre de la columna en la que desea insertar filas en blanco en función de cuándo cambia el valor en En cada cambio en la sección;
2: Escoger Contar del desplegable Utilice la función la lista desplegable;
3: Marque el nombre de la columna en la que desea insertar el subtotal en el Agregar subtotal a cuadro de lista

3. Luego haga clic OK, las líneas de subtotal se han insertado entre los diferentes productos y los símbolos de esquema se muestran a la izquierda de la tabla, ver captura de pantalla:

4. Y luego haga clic en el número 2 en la parte superior del símbolo de contorno para mostrar solo las líneas de subtotal.

5. Luego seleccione los datos del rango de subtotal y presione Alt +; teclas de acceso directo para seleccionar solo las filas visibles, vea la captura de pantalla:

6. Después de seleccionar las filas visibles solo, presione el Borrar en el teclado y se han eliminado todas las filas de subtotales.

7. Luego haga clic en cualquier otra celda y vuelva Datos > Desagrupar > Esquema claro para eliminar los Contornos, vea la captura de pantalla:

8. Los símbolos de contorno se han borrado a la vez y puede ver que se han insertado filas en blanco entre los datos cuando el valor cambia, vea la captura de pantalla:

9. Por último, puede eliminar la columna A según lo necesite.


Inserte un salto de página, filas en blanco, borde inferior o color de relleno cuando el valor cambie rápidamente

Si tiene Kutools for Excel's Distinguir diferencias función, puede insertar rápidamente saltos de página, filas en blanco, borde inferior o color de relleno cuando el valor cambia según lo necesite. Vea la demostración a continuación.         ¡Haga clic para descargar Kutools para Excel!


Insertar filas en blanco cuando el valor cambia con columnas auxiliares

Con las columnas auxiliares, puede insertar la fórmula primero y luego aplicar el Buscar y reemplazar función, por último, inserte las filas en blanco entre los valores cambiantes. Haz lo siguiente:

1. En una celda en blanco C3, ingrese esta fórmula = A3 = A2, y en la celda D4 ingrese esta fórmula = A4 = A3, ver captura de pantalla:

2. Luego seleccione C3: D4 y arrastre el controlador de relleno hasta el rango en el que desea aplicar estas fórmulas, y obtendrá ¿Editas con tu equipo de forma remota? or Falso en las celdas, vea la captura de pantalla:

3. Y luego presione Ctrl + F teclas para abrir el Buscar y reemplazar diálogo, en el diálogo emergente, ingrese FALSO en el Encuentra lo que cuadro de texto debajo Encuentre pestaña y haga clic Opciones para expandir este cuadro de diálogo y elija Nuestros Valores del desplegable Pase a ver lista desplegable, ver captura de pantalla:

4. Haga Clic en Encuentra todos y luego presione Ctrl + A para seleccionar todos los resultados de la búsqueda, todas las celdas FALSAS se han seleccionado a la vez, vea la captura de pantalla:

6. Cierra el Buscar y reemplazar diálogo, siguiente paso, puede insertar filas en blanco haciendo clic en Inicio > recuadro > Insertar filas de hojas, y se insertaron filas en blanco en los datos cuando el valor cambia según la columna A, vea las capturas de pantalla:

7. Finalmente, puede eliminar las columnas auxiliares C y D según lo necesite.


Inserte filas en blanco cuando el valor cambie con el código VBA

Si está cansado de usar los métodos anteriores, aquí hay un código que también puede ayudarlo a insertar filas en blanco entre los valores modificados a la vez.

1. Mantenga pulsado el ALT + F11 teclas para abrir el Ventana de Microsoft Visual Basic para aplicaciones.

2. Hacer clic recuadro > Móduloy pegue el siguiente código en el Ventana de módulo.

Código de VBA: inserte filas en blanco cuando cambie el valor

Sub InsertRowsAtValueChange()
'Update by Extendoffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For i = WorkRng.Rows.Count To 2 Step -1
    If WorkRng.Cells(i, 1).Value <> WorkRng.Cells(i - 1, 1).Value Then
        WorkRng.Cells(i, 1).EntireRow.Insert
    End If
Next
Application.ScreenUpdating = True
End Sub

3. Entonces presione F5 para ejecutar este código, y aparecerá un cuadro emergente que le permitirá seleccionar los datos de una columna en la que desea insertar filas en blanco cuando el valor cambie en el que se basó, vea la captura de pantalla:

4. Y luego haz clic OK, las filas en blanco se han insertado entre los datos cuando el valor cambia según la columna A.


Inserte un número específico de filas en blanco cuando el valor cambie con una característica poderosa

Si ha probado con los molestos métodos anteriores, aquí, presentaré una herramienta útil, Kutools for Excel's Distinguir diferencias puede ayudarlo a insertar saltos de página, filas en blanco, borde inferior o color de relleno cuando el valor de la celda cambia rápida y fácilmente.

Consejos:Para aplicar esto Distinguir diferencias función, en primer lugar, debe descargar la Kutools for Excely, a continuación, aplique la función de forma rápida y sencilla.

Después de instalar Kutools for Excel, haz lo siguiente:

1. Hacer clic Kutools > Formato > Distinguir diferencias, ver captura de pantalla:

2. En la Distinguir diferencias por columna clave cuadro de diálogo, realice las siguientes operaciones:

  • Seleccione el rango de datos que desea usar y luego elija la columna clave en la que desea insertar filas en blanco;
  • Entonces revisa Fila en blanco Opción de la Opciones sección e ingrese el número de filas en blanco que desea insertar.

3. Luego haga clic Ok , y el número específico de filas en blanco se ha insertado en los datos si el valor de la celda cambia, vea las capturas de pantalla:

¡Haga clic para descargar Kutools para Excel y prueba gratuita ahora!

Las mejores herramientas de productividad de oficina

🤖 Asistente de IA de Kutools: Revolucionar el análisis de datos basado en: Ejecución inteligente   |  Generar codigo  |  Crear fórmulas personalizadas  |  Analizar datos y generar gráficos  |  Invocar funciones de Kutools...
Características populares: Buscar, resaltar o identificar duplicados   |  Eliminar filas en blanco   |  Combine columnas o celdas sin perder datos   |   Ronda sin fórmula ...
Super búsqueda: Búsqueda virtual de criterios múltiples    Búsqueda V de valores múltiples  |   VLookup en varias hojas   |   Búsqueda difusa ....
Lista desplegable avanzada: Crear rápidamente una lista desplegable   |  Lista desplegable dependiente   |  Lista desplegable de selección múltiple ....
Administrador de columnas: Agregar un número específico de columnas  |  Mover columnas  |  Toggle Estado de visibilidad de columnas ocultas  |  Comparar rangos y columnas ...
Características destacadas: Enfoque de cuadrícula   |  Vista de diseño   |   Gran barra de fórmulas    Administrador de hojas y libros de trabajo   |  Biblioteca de Recursos (Texto automático)   |  Selector de fechas   |  Combinar hojas de trabajo   |  Cifrar/descifrar celdas    Enviar correos electrónicos por lista   |  Súper filtro   |   Filtro especial (filtro negrita/cursiva/tachado...) ...
Los 15 mejores conjuntos de herramientas12 Texto Herramientas (Añadir texto, Quitar caracteres, ...)   |   50+ Tabla Tipos (Diagrama de Gantt, ...)   |   40+ Práctico Fórmulas (Calcular la edad según el cumpleaños, ...)   |   19 Inserción Herramientas (Insertar código QR, Insertar imagen desde la ruta, ...)   |   12 Conversión Herramientas (Números a palabras, Conversión de Moneda, ...)   |   7 Fusionar y dividir Herramientas (Filas combinadas avanzadas, Células partidas, ...)   |   ... y más

Mejore sus habilidades de Excel con Kutools for Excel y experimente la eficiencia como nunca antes. Kutools for Excel ofrece más de 300 funciones avanzadas para aumentar la productividad y ahorrar tiempo.  Haga clic aquí para obtener la función que más necesita...

Descripción


Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!
Comments (16)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi, Hassan,

This vba is amazing, whereas I need one more alternate code for insert single blank row after changes in sequencing numbers. Example:- In column having number series like 1, 2, 3, 5, 6, 9 & etc...
Need to add single blank row between 3 & 5 as well as 6 & 9.
Please can you with this.
This comment was minimized by the moderator on the site
Can the VBA method be adapted to ignore blank cells? I have a file which I need to insert rows in based on two different columns but when I run the macro on the second column I end up with three blank lines where the first macro run inserted rows.
Or can it run on two columns at the same time?
This comment was minimized by the moderator on the site
Hello,
Is very usefull in case i need to insert 1 row, but if i need to insert 145 rows in every time the data change in spwcific column, how can i do it??
This comment was minimized by the moderator on the site
Hi, Hassan,
To insert multiple blank rows when value changes in a specific column, you should apply the following VBA code:

Note: In the below code, you should change the number 99 to your need, for example, when you insert 145 blank rows, you should change the number 99 to 144. Please try it, hope it can help you!

Sub InsertRowsAtValueChange()
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For i = WorkRng.Rows.Count To 2 Step -1
If WorkRng.Cells(i, 1).Value <> WorkRng.Cells(i - 1, 1).Value Then
Range(WorkRng.Cells(i, 1).EntireRow, WorkRng.Cells(i + 99, 1).EntireRow).Insert
End If
Next
Application.ScreenUpdating = True
End Sub
This comment was minimized by the moderator on the site
Very helpful. The code that skyyang shows above worked perfectly. Just make sure that the data doesn't already have spaces in it.

I don't understand VBA, but I believe if you wanted to add more rows underneath data that already had the spacing, there should be a way to ignore spaces.

Could a line be added to ignore or skip over blank lines? That might make this code more universal and repeatable if needed. Also a delete function that is similar to this may be useful so undo isn't necessary.
This comment was minimized by the moderator on the site
RE: insert blank rows when value changes with vba code
Is there a way that I can save the Range & not have to pick it every time I run it?
This comment was minimized by the moderator on the site
The VBA code worked 1st time and did exactly what I was trying to do. Thank you so much!
This comment was minimized by the moderator on the site
I've been using my own solution for some time.
1. Insert a helper column into Column A
2. In A2, type "if(B2=B1,A1,A1+1)"
3. Copy that formula down to the last row
4. Copy all the populated cells in column A and Paste Special (Values) over them
5. Copy all the cells again and paste them into column A in the first unpopulated cell (e.g. if you have 104 rows of data plus a header row you would paste into cell A106)
6. Click on Data and Remove Duplicates (only on the cells you just pasted in Step 5; not on all rows)
7. Sort all of Column A
8. Delete Column A

Seems like a lot of steps but only takes a few seconds.
This comment was minimized by the moderator on the site
[quote]Hi all thank you!! its awesome , can you guys also let me how to insert 2 rows when the value changes in VBA or through excel.By Hudson[/quote] Please let me know how to insert more than 1 row.
This comment was minimized by the moderator on the site
Hi there, These are almost useful! The first method doesn't work for me because when I follow the steps explicitly, the the data that I delete in the subtotal panes deletes the entire columns that I've sorted. In the second method when I get to the step where I insert sheet rows, the rows are inserted ABOVE the FALSE cells which breaks up the data, but the last selection of every group is then added to the group below. Any advice???
This comment was minimized by the moderator on the site
Hi all thank you!! its awesome , can you guys also let me how to insert 2 rows when the value changes in VBA or through excel.
This comment was minimized by the moderator on the site
Where in the code would I need to modify to include more than one row, I need to add 10 after each break... Thanks
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations