¿Cómo eliminar celdas en blanco y mover datos hacia la izquierda en Excel?
Trabajar con conjuntos de datos en Excel a menudo lleva a la presencia de celdas en blanco no deseadas dispersas entre tus datos. Estos espacios vacíos pueden interrumpir cálculos, ordenamientos o análisis, especialmente cuando deseas que las entradas de datos estén alineadas sin huecos. Eliminar manualmente cada celda en blanco y desplazar el contenido restante hacia la izquierda puede ser extremadamente lento y propenso a errores si tienes un gran volumen de información. Este tutorial introduce varios métodos rápidos y eficientes para eliminar celdas en blanco en un rango de datos y mover las celdas restantes hacia la izquierda, asegurando que tu hoja de trabajo permanezca organizada y más adecuada para procesamiento o análisis adicional. Las siguientes soluciones se adaptan a diferentes necesidades, ya sea que prefieras enfoques manuales, basados en fórmulas o programables. Comprender las ventajas y desventajas de cada método puede ayudarte a elegir el más apropiado para tu realidad.
![]() | ![]() | ![]() |
Función Ir a - Eliminar celdas en blanco y mover hacia la izquierda
Fórmula de Excel - Eliminar espacios en blanco y desplazar datos hacia la izquierda
Código VBA - Eliminar automáticamente celdas en blanco y desplazar datos hacia la izquierda
Función Ir a - Eliminar celdas en blanco y mover hacia la izquierda
Cuando deseas eliminar celdas en blanco y desplazar los datos restantes hacia la izquierda, Excel proporciona un método integrado que es rápido para rangos relativamente pequeños y consistentes. Este enfoque es especialmente práctico si prefieres no usar fórmulas o programación. Sin embargo, es más adecuado para limpiezas básicas únicas en lugar de soluciones automatizadas o conjuntos de datos muy grandes. Aquí está cómo realizar esta tarea paso a paso:
1. Selecciona el rango de datos que contiene las celdas en blanco que deseas eliminar. Esto podría ser una sola fila, múltiples filas, o un área completa. Luego, presiona Ctrl + G para mostrar el cuadro de diálogo Ir a En esta ventana, haz clic en Especial para afinar aún más tu selección. Ver captura de pantalla:
2. En el Ir a Especial cuadro de diálogo, marca la opción Blancos y haz clic en AceptarEste paso resalta todas las celdas vacías dentro del rango seleccionado. Ver captura de pantalla:
3. Con todas las celdas en blanco ahora seleccionadas, haz clic derecho en cualquiera de las celdas en blanco seleccionadas y elige Eliminar desde el menú contextual. Ver captura de pantalla:
4. En el cuadro de diálogo Eliminar selecciona la opción Desplazar celdas hacia la izquierda y haz clic en AceptarEsta acción hará que todos los datos se muevan hacia la izquierda, rellenando prolijamente los huecos creados por las celdas en blanco. Ver captura de pantalla:
Después de completar estos pasos, las celdas en blanco se eliminarán y los datos restantes se desplazarán hacia la izquierda, como se ilustra a continuación:
![]() | ![]() | ![]() |
Fórmula de Excel - Eliminar espacios en blanco y desplazar datos hacia la izquierda
Para situaciones donde deseas una solución dinámica impulsada por fórmulas, como la eliminación de espacios en blanco de filas o columnas, y que los resultados se actualicen automáticamente cuando cambien los datos de origen, la función FILTRAR (Excel 365 y Excel 2021) puede ser muy efectiva. Este enfoque es especialmente útil para generar un nuevo rango sin celdas en blanco, lo que significa que puedes mantener tus datos originales intactos mientras obtienes una versión sin espacios en blanco y desplazada hacia la izquierda en otra parte de tu hoja de trabajo.
Nota: Las fórmulas específicas disponibles dependerán de tu versión de Excel. La función FILTRAR solo está disponible en versiones más recientes (Excel 365, Excel 2021 o posterior).
1. Supongamos que tus datos están en A1:E10 (horizontalmente). Para crear una nueva fila sin espacios en blanco, selecciona una celda vacía donde quieras que aparezca la salida, por ejemplo, F1, e ingresa la siguiente fórmula:
=FILTER(A1:E1, A1:E1 <> "")
Esta fórmula recopila solo las celdas no vacías de A1:E1 y las lista alineadas a la izquierda comenzando en F1.
2. Presiona Enter y los datos no vacíos se auto-completarán hacia la izquierda en el nuevo rango. Luego, arrastra o copia la fórmula hacia abajo.
Escenario aplicable: Este método se recomienda cuando deseas mantener tus datos de origen sin cambios y crear automáticamente un rango limpio en otro lugar. Sin embargo, una limitación es que no sobrescribe los datos originales, sino que proporciona una versión "virtual" desplazada de los mismos.
Consejo práctico: Si deseas conservar solo valores en tu nuevo rango, después de aplicar la fórmula, copia los resultados y usa Pegado especial > Valores para sobrescribir el rango original, si es necesario. Asegúrate siempre de ajustar las referencias de celda si copias fórmulas a otras áreas.
Código VBA - Eliminar automáticamente celdas en blanco y desplazar datos hacia la izquierda
Si frecuentemente necesitas eliminar celdas en blanco y desplazar las entradas restantes hacia la izquierda, especialmente en grandes volúmenes o conjuntos de datos de tamaño irregular, una macro VBA puede automatizar esta tarea repetitiva. Este enfoque procesa las celdas en su lugar, eliminando físicamente los espacios en blanco para que los datos se "compacten" hacia la izquierda dentro de cada fila. Las macros ahorran tiempo y ayudan a evitar errores manuales al manejar hojas de trabajo complejas.
1. Abre el Editor VBA haciendo clic en Herramientas de desarrollo > Visual Basic. En la ventana Microsoft Visual Basic para Aplicaciones que aparece, haz clic en Insertar > Módulo, y pega el código a continuación en el área del módulo:
Sub DeleteBlanksShiftLeft()
Dim WorkRng As Range
Dim RowRng As Range
Dim xTitleId As String
Dim i As Long, c As Long
Dim TempList As Collection
Dim Cell As Range
xTitleId = "KutoolsforExcel"
On Error Resume Next
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Select range to process (rows will be processed individually):", xTitleId, WorkRng.Address, Type:=8)
On Error GoTo 0
If WorkRng Is Nothing Then Exit Sub
Application.ScreenUpdating = False
' Process each row individually
For Each RowRng In WorkRng.Rows
Set TempList = New Collection
' Collect non-empty values in the row
For Each Cell In RowRng.Cells
If Trim(Cell.Value) <> "" Then
TempList.Add Cell.Value
End If
Next Cell
' Clear entire row first
RowRng.ClearContents
' Refill row with collected values from left to right
For i = 1 To TempList.Count
RowRng.Cells(1, i).Value = TempList(i)
Next i
Next RowRng
Application.ScreenUpdating = True
MsgBox "All blank cells in rows have been removed and values shifted left.", vbInformation
End Sub
2. Después de insertar el código, haz clic en el botón o presiona F5 para ejecutar la macro. Cuando se te solicite, selecciona tu rango objetivo. La macro procesará cada fila, desplazando hacia la izquierda los valores para llenar los espacios en blanco y eliminando celdas vacías en el proceso.
Escenario aplicable: Las macros son ideales para usuarios cómodos con habilitar y usar VBA, especialmente cuando se requiere la eliminación rutinaria de espacios en blanco en grandes rangos de datos, o en plantillas que se reutilizan. Este método modifica físicamente los datos originales, por lo que se recomienda hacer una copia de seguridad de tu hoja de trabajo antes de proceder. Ten cuidado si tu estructura de datos es irregular o contiene fórmulas, ya que la macro trabaja sobre los valores y puede interrumpir dependencias subyacentes.
Consejo de solución de problemas: Si ocurren resultados inesperados, puede deberse a celdas combinadas, salidas de fórmulas o celdas protegidas. Descombinar, desbloquear o limpiar fórmulas según sea necesario antes de ejecutar la macro.
Sugerencia de resumen: Siempre que sea posible, elige fórmulas para transformaciones de datos dinámicas y no destructivas, y macros para ediciones masivas en su lugar. Guarda siempre una copia de tus datos antes de ejecutar la automatización y verifica el resultado para asegurarte de que el diseño de tu hoja de trabajo permanezca como se pretende.
Insertar filas o columnas en blanco por lotes en un intervalo específico en Excel |
Si desea insertar filas en blanco en cada otra fila, es posible que necesite insertarlas una por una, pero Insertar Filas y Columnas en Blanco de Kutools para Excel puede resolver este trabajo en segundos. ¡Haga clic para obtener 30 días de prueba gratuita! |
Kutools para Excel: con más de 300 complementos útiles para Excel, pruébelos gratis sin limitaciones durante 30 días. |
Artículos relacionados
- ¿Cómo copiar y pegar solo celdas no vacías en Excel?
- ¿Cómo contar ignorando ceros o celdas vacías en Excel?
Las mejores herramientas de productividad para Office
Mejora tu dominio de Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...
Office Tab incorpora la interfaz de pestañas en Office y facilita mucho tu trabajo
- Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de hacerlo en ventanas separadas.
- ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!
Todos los complementos de Kutools. Un solo instalador
El paquete Kutools for Office agrupa complementos para Excel, Word, Outlook y PowerPoint junto con Office Tab Pro, ideal para equipos que trabajan en varias aplicaciones de Office.





- Suite todo en uno: complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
- Un solo instalador, una licencia: configuración en minutos (compatible con MSI)
- Mejor juntos: productividad optimizada en todas las aplicaciones de Office
- Prueba completa de30 días: sin registro ni tarjeta de crédito
- La mejor relación calidad-precio: ahorra en comparación con la compra individual de complementos