Skip to main content

Kutools para Office — Una Suite. Cinco Herramientas. Haz Más.

¿Cómo mover una fila completa al final de la hoja activa según el valor de una celda en Excel?

Author Siluvia Last modified

En Excel, es posible que necesites reorganizar tus datos con frecuencia según el estado o el valor en una columna específica. Por ejemplo, después de realizar un seguimiento del progreso de las tareas, podrías querer que todas las filas donde el estado sea "Completado" se muevan al final de tu hoja de trabajo, manteniendo las tareas activas o en progreso en la parte superior. Relocalizar automáticamente filas enteras según el valor de una celda puede hacer que tu hoja de cálculo sea más fácil de gestionar, destacar prioridades y ayudarte a enfocarte eficientemente en los elementos no terminados.

Hay varias formas de lograr esto en Excel, incluyendo el uso de código VBA para automatización o aprovechar fórmulas y la funcionalidad de ordenación incorporada de Excel. Cada enfoque tiene sus propias fortalezas y es adecuado para diferentes escenarios. A continuación, se presentan soluciones paso a paso para ayudarte a mover filas completas al final de tu hoja de trabajo activa según un valor específico de una celda.


Mover una fila completa al final de la hoja activa según el valor de una celda con código VBA

Supongamos que tienes una tabla donde la columna C contiene un estado, como "Completado", y deseas que cualquier fila con "Completado" en la columna C se reubique instantáneamente al final de tu rango de datos. Esta solución de VBA es especialmente útil si quieres un proceso repetible y semiautomático que maneje cambios dinámicos de datos sin necesidad de ordenación manual.

move entire row to the bottom of active sheet based on cell value

1. Presiona simultáneamente Alt + F11 para abrir la ventana de Microsoft Visual Basic for Applications.

2. En la ventana de Microsoft Visual Basic for Applications, haz clic en Insertar > Módulo. Luego copia y pega el siguiente código VBA en la ventana.

Código VBA: Mover una fila completa al final de la hoja activa basándose en el valor de una celda

Sub MoveToEnd()
    Dim xRg As Range
    Dim xTxt As String
    Dim xCell As Range
    Dim xEndRow As Long
    Dim I As Long
    On Error Resume Next
    If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
    Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
    End If
lOne:
    Set xRg = Application.InputBox("Select range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Columns.Count > 1 Or xRg.Areas.Count > 1 Then
        MsgBox " Multiple ranges or columns have been selected ", vbInformation, "Kutools for Excel"
        GoTo lOne
    End If
    xEndRow = xRg.Rows.Count + xRg.Row
    Application.ScreenUpdating = False
    For I = xRg.Rows.Count To 1 Step -1
        If xRg.Cells(I) = "Done" Then
           xRg.Cells(I).EntireRow.Cut
           Rows(xEndRow).Insert Shift:=xlDown
        End If
    Next
    Application.ScreenUpdating = True
End Sub

Nota: En este código VBA, el valor específico al que se hace referencia es “Completado”. Puedes modificar este valor en el código para que coincida con el valor que desees que active el movimiento de la fila (por ejemplo, puedes cambiarlo a "Finalizado" u otro estado que se ajuste a tu flujo de trabajo). Asegúrate de que el valor coincida exactamente, incluyendo mayúsculas y espaciado, o considera ajustar el código para coincidencia insensible a mayúsculas si es necesario.

3. Presiona la tecla F5 o haz clic en el botón Ejecutar para ejecutar el código. En el cuadro de diálogo emergente Kutools for Excel, selecciona el rango de columnas donde puede aparecer el valor objetivo, luego haz clic en el botón Aceptar.

vba code to select the data range

Después de confirmar, el código buscará automáticamente las filas con el valor “Completado” en tu columna seleccionada y las reubicará al final de tu rango de datos. Esta reorganización ocurre instantáneamente, ahorrándote el tiempo de ordenar o arrastrar filas manualmente.

 the entire row contains the specific value is moved to the bottom of the data range

Consejos:

  • Si tienes encabezados, asegúrate de no incluirlos en tu selección cuando se te solicite, para evitar mover la fila de encabezado.
  • Este script VBA solo se aplica a la hoja de cálculo activa actualmente. Si necesitas realizar esta operación en varias hojas, repite el proceso para cada hoja.
  • Si tus datos contienen fórmulas o celdas vinculadas, mover filas puede causar que las referencias cambien. Revisa tu hoja de cálculo después de ejecutar la macro para asegurar la integridad de los datos.

Este método VBA es excelente en situaciones donde necesitas procesar un gran número de filas regularmente, especialmente cuando la ordenación manual es ineficiente. Sin embargo, si requieres una solución que no implique macros, o si prefieres trabajar directamente con fórmulas y las herramientas estándar de Excel, considera el siguiente enfoque.

a screenshot of kutools for excel ai

Descubre la Magia de Excel con Kutools AI

  • Ejecución Inteligente: Realiza operaciones en celdas, analiza datos y crea gráficos, todo impulsado por comandos simples.
  • Fórmulas Personalizadas: Genera fórmulas adaptadas para optimizar tus flujos de trabajo.
  • Codificación VBA: Escribe e implementa código VBA sin esfuerzo.
  • Interpretación de Fórmulas: Comprende fórmulas complejas con facilidad.
  • Traducción de Texto: Supera las barreras del idioma dentro de tus hojas de cálculo.
Potencia tus capacidades de Excel con herramientas impulsadas por IA. ¡Descarga Ahora y experimenta una eficiencia como nunca antes!

Mover una fila completa al final usando fórmulas de Excel y ordenación

Para usuarios que prefieren no usar macros o quieren una forma más transparente y basada en fórmulas para gestionar sus datos, puedes lograr el mismo efecto utilizando columnas auxiliares y la funcionalidad de ordenación incorporada de Excel. Este método funciona bien en entornos colaborativos o archivos que deben compartirse con otros que puedan tener configuraciones de seguridad de macros habilitadas.

1. Inserta una nueva columna auxiliar a la derecha o izquierda de tus datos existentes. Para ilustrar, si tus encabezados de datos están en la fila 1 y los valores comienzan desde la fila 2, y tu estado está en la columna C, inserta una nueva columna D y etiquétala como "ClaveOrden" o similar.

2. En la primera celda de la columna auxiliar (excluyendo el encabezado, por ejemplo, D2), introduce la siguiente fórmula:

=IF(C2="Done",1,0)

Esta fórmula asignará 1 a las filas donde la columna C sea "Completado", y 0 a todas las demás filas.

3. Presiona Enter para confirmar la fórmula, luego cópiala hacia abajo junto a todas tus filas de datos. Simplemente arrastra el controlador de relleno desde D2 hasta la última fila de tus datos, o haz doble clic en el controlador de relleno para un relleno automático si la columna adyacente está poblada.

4. Selecciona cualquier celda en tu rango de datos, luego desde la cinta de Excel, ve a la pestaña Datos y haz clic en Ordenar.

5. En el cuadro de diálogo Ordenar, selecciona la columna auxiliar ("ClaveOrden") en el menú desplegable "Ordenar por", y elige el orden De menor a mayor. Esto mantendrá todas las filas con "Completado" (marcadas con 1) al final, y el resto (marcadas con 0) en la parte superior.

6. Haz clic en Aceptar para aplicar la ordenación. Tus datos ahora se reorganizarán de modo que todas las entradas completadas o "Completado" aparezcan al final de la tabla.

Explicaciones de parámetros y consejos:

  • Puedes cambiar "Completado" en la fórmula por cualquier otro indicador de estado relevante para tu hoja (por ejemplo, "Finalizado", "Inactivo"). Asegúrate de que la ortografía coincida exactamente con tus datos.
  • Si deseas mover filas con múltiples valores (por ejemplo, tanto "Completado" como "Cancelado"), utiliza una fórmula como:
    =IF(OR(C2="Done",C2="Canceled"),1,0)
  • Para revertir el efecto (es decir, filas "Completado" en la parte superior), ordena en orden De mayor a menor o intercambia 0 y 1 en la fórmula.

Este enfoque no elimina ni oculta ninguna fila y mantiene intacta la estructura de tus datos. Es ideal para colaborar con otros, garantizando la compatibilidad entre diferentes versiones de Excel y evitando posibles problemas con archivos habilitados para macros.


Artículos relacionados:

Las mejores herramientas de productividad para Office

🤖 Kutools AI Aide: Revoluciona el análisis de datos basado en: Ejecución inteligente | Generar código | Crear fórmulas personalizadas | Analizar datos y generar gráficos | Invocar Funciones mejoradas
Funciones populares: Buscar, resaltar o identificar duplicados | Eliminar filas en blanco | Combinar columnas o celdas sin perder datos | Redondear...
Super BUSCARV: Búsqueda por varios criterios | Búsqueda por varios valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Cree 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 | Alternar el estado de visibilidad de columnas ocultas | Comparar rangos y columnas...
Funciones destacadas: Cuadrícula de enfoque | Vista de diseño | Barra de fórmulas mejorada | Administrador de Libro de trabajo y Hoja de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Cifrar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtrar celdas con fuente en negrita/cursiva/tachado...)...
Los15 principales conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres específicos, ...) | Más de50 tipos de gráficos (Diagrama de Gantt, ...) | Más de40 fórmulas prácticas (Calcular edad basada en la fecha de nacimiento, ...) |19 herramientas de inserción (Insertar código QR, Insertar imagen desde ruta, ...) |12 herramientas de conversión (Convertir a palabras, Conversión de moneda, ...) |7 herramientas de combinar y dividir (Combinar filas avanzado, Dividir celdas, ...) ... y más
Utiliza Kutools en tu idioma preferido: admite inglés, español, alemán, francés, chino y más de40 idiomas adicionales.

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.

Excel Word Outlook Tabs PowerPoint
  • 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