Cómo voltear datos en columnas y filas de Excel (vertical y horizontalmente)

  • Compartir Este
Michael Brown

El tutorial muestra algunas formas rápidas de voltear tablas en Excel vertical y horizontalmente conservando el formato y las fórmulas originales.

Dar la vuelta a los datos en Excel parece una tarea trivial de un solo clic, pero sorprendentemente no existe tal opción incorporada. En situaciones en las que se necesita invertir el orden de los datos en una columna ordenada alfabéticamente o de menor a mayor, obviamente se puede utilizar la función Ordenar de Excel. Pero, ¿cómo se da la vuelta a una columna con datos sin ordenar? O, ¿cómo se invierte el orden de los datos en una tabla horizontalmente en filas?Recibirás todas las respuestas en un momento.

    Voltear datos en Excel verticalmente

    Con un poco de creatividad, puedes encontrar diferentes formas de voltear una columna en Excel: utilizando funciones incorporadas, fórmulas, VBA o herramientas especiales. A continuación se detallan los pasos de cada método.

    Cómo voltear una columna en Excel

    Para invertir verticalmente el orden de los datos de una columna, siga estos pasos:

    1. Añada una columna de ayuda junto a la columna que desea voltear y rellene esa columna con una secuencia de números, empezando por 1. Este consejo muestra cómo hacerlo automáticamente.
    2. Ordena la columna de números en orden descendente. Para ello, selecciona cualquier celda de la columna de ayuda, ve a la opción Ficha Datos > Ordenar y filtrar y haga clic en el botón Ordenar de mayor a menor (ZA).

    Como se muestra en la siguiente captura de pantalla, esto ordenará no sólo los números de la columna B, sino también los elementos originales de la columna A, invirtiendo el orden de las filas:

    Ahora puede eliminar con seguridad la columna auxiliar, puesto que ya no la necesita.

    Consejo: Cómo rellenar rápidamente una columna con números de serie

    La forma más rápida de rellenar una columna con una secuencia de números es utilizando la función Autorrelleno de Excel:

    • Escribe 1 en la primera celda y 2 en la segunda (celdas B2 y B3 en la captura de pantalla de abajo).
    • Selecciona las celdas en las que acabas de introducir los números y haz doble clic en la esquina inferior derecha de la selección.

    Excel rellenará automáticamente la columna con números de serie hasta la última celda con datos de la columna adyacente.

    Cómo voltear una tabla en Excel

    El método anterior también funciona para invertir el orden de los datos en varias columnas:

    A veces (la mayoría de las veces cuando se selecciona toda la columna de números antes de la clasificación) Excel puede mostrar el icono Aviso de clasificación En este caso, compruebe el cuadro de diálogo Ampliar la selección y, a continuación, haga clic en el botón Ordenar botón.

    Consejo: si desea cambiar filas y columnas Utiliza la función TRANSPOSE de Excel u otras formas de transponer datos en Excel.

    Cómo voltear columnas en Excel utilizando una fórmula

    Otra forma de dar la vuelta a una columna es utilizando esta fórmula genérica:

    ÍNDICE( gama ROWS( gama ))

    Para nuestro conjunto de datos de muestra, la fórmula es la siguiente:

    =INDEX($A$2:$A$7,FILAS(A2:$A$7))

    ...e invierte la columna A impecablemente:

    Cómo funciona esta fórmula

    En el corazón de la fórmula se encuentra la función INDEX(array, row_num, [column_num]), que devuelve el valor de un elemento en matriz en función de los números de fila y/o columna que especifique.

    En el array, introduces toda la lista que quieres voltear (A2:A7 en este ejemplo).

    El número de filas se calcula mediante la función ROWS. En su forma más simple, ROWS(array) devuelve el número de filas de matriz En nuestra fórmula, es el uso inteligente de las referencias relativas y absolutas lo que hace el truco de "voltear la columna":

    • Para la primera celda (B2), ROWS(A2:$A$7) devuelve 6, por lo que INDEX obtiene el último elemento de la lista (el 6º elemento).
    • En la segunda celda (B3), la referencia relativa A2 cambia a A3, por lo que ROWS(A3:$A$7) devuelve 5, obligando a INDEX a buscar el penúltimo elemento.

    En otras palabras, ROWS crea una especie de contador decreciente para INDEX, de forma que se mueve desde el último elemento hacia el primero.

    Consejo: Cómo sustituir fórmulas por valores

    Ahora que tienes dos columnas de datos, puede que quieras reemplazar las fórmulas por valores calculados, y luego eliminar una columna extra. Para ello, copia las celdas de las fórmulas, selecciona las celdas donde quieras pegar los valores, y pulsa Mayús+F10 y luego V , que es la forma más rápida de aplicar la opción Pegado especial> Valores de Excel.

    Para más información, consulte Cómo sustituir fórmulas por valores en Excel.

    Cómo voltear columnas en Excel con VBA

    Si tiene alguna experiencia con VBA, puede utilizar la siguiente macro para invertir el orden de los datos verticalmente en una o varias columnas:

    Dim Rng As Range Dim WorkRng As Range Dim Arr As Variant Dim i As Integer , j As Integer , k As Integer On Error Resume Next xTitleId = "Voltear columnas verticalmente" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox( "Rango" , xTitleId, WorkRng.Address, Type :=8) Arr = WorkRng.Formula Application.ScreenUpdating = False Application.Calculation = xlCalculationManual For j = 1 ToUBound (Arr, 2) k = UBound (Arr, 1) For i = 1 To UBound (Arr, 1) / 2 xTemp = Arr(i, j) Arr(i, j) = Arr(k, j) Arr(k, j) = xTemp k = k - 1 Next Next WorkRng.Formula = Arr Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic End Sub

    Cómo utilizar la macro Voltear columnas

    1. Abra la ventana Microsoft Visual Basic para Aplicaciones ( Alt + F11 ).
    2. Haga clic en Inserte > Módulo y pegue el código anterior en la ventana Código.
    3. Ejecute la macro ( F5 ).
    4. En Voltear columnas que le pedirá que seleccione el intervalo que desea voltear:

    Seleccione una o varias columnas con el ratón, sin incluir las cabeceras de columna, y haga clic en OK y obtendrá el resultado en un momento.

    Para guardar la macro, asegúrese de guardar el archivo como archivo Libro Excel habilitado para macros .

    Cómo voltear datos en Excel conservando el formato y las fórmulas

    Con los métodos anteriores, puede invertir fácilmente el orden de los datos en una columna o tabla. Pero, ¿qué ocurre si no sólo desea invertir los valores, sino también los formatos de las celdas? Además, ¿qué ocurre si algunos datos de la tabla están basados en fórmulas y desea evitar que las fórmulas se rompan al invertir las columnas? En este caso, puede utilizar la función Flip incluida en nuestra Ultimate Suite para Excel.

    Supongamos que tiene una tabla bien formateada como la que se muestra a continuación, en la que algunas columnas contienen valores y otras tienen fórmulas:

    Lo que busca es voltear las columnas de su tabla manteniendo tanto el formato (sombreado gris para las filas con cantidad cero) como las fórmulas correctamente calculadas. Esto se puede hacer en dos pasos rápidos:

    1. Con cualquier celda de la tabla seleccionada, vaya al botón Datos de Ablebits tab> Transformar y haga clic en Flip > Volteo vertical .
    2. En el Volteo vertical configure las siguientes opciones:
      • En el Seleccione su gama compruebe la referencia de rango y asegúrese de que no se incluye la fila de cabecera.
      • Seleccione Ajustar referencias de celdas y marque la casilla Conservar el formato caja.
      • Opcionalmente, elija Crear una copia de seguridad (seleccionado por defecto).
      • Haga clic en el botón Flip botón.

    Se invierte el orden de los datos en la tabla, se mantiene el formato y se ajustan las referencias de las celdas en las fórmulas:

    Voltear datos en Excel horizontalmente

    Hasta ahora, en este tutorial hemos volteado columnas boca abajo. Ahora, vamos a ver cómo invertir el orden de los datos horizontalmente, es decir, voltear una tabla de izquierda a derecha.

    Cómo voltear filas en Excel

    Como en Excel no existe la opción de ordenar las filas, primero tendrás que cambiar las filas por columnas, luego ordenar las columnas y, por último, volver a transponer la tabla. A continuación se detallan los pasos:

    1. Utilice la función Pegado especial> Transponer para convertir columnas en filas. Como resultado, su tabla sufrirá esta transformación:
    2. Añada una columna de ayuda con números, como en el primer ejemplo, y ordene por la columna de ayuda. El resultado intermedio será algo parecido a esto:
    3. Utilice Pegado especial> Transponer una vez más para volver a girar la mesa:

    Nota. Si sus datos de origen contienen fórmulas, es posible que se rompan durante la operación de transposición. En este caso, tendrá que restaurar las fórmulas manualmente. O puede utilizar la herramienta Flip incluida en nuestra Ultimate Suite y ajustará todas las referencias por usted automáticamente.

    Invertir el orden de los datos horizontalmente con VBA

    He aquí una sencilla macro que puede voltear rápidamente los datos de su tabla Excel horizontalmente:

    Sub VoltearDatosHorizontalmente() Dim Rng As Range Dim WorkRng As Range Dim Arr As Variant Dim i As Integer , j As Integer , k As Integer On Error Resume Next xTitleId = "Voltear Datos Horizontalmente" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox( "Rango" , xTitleId, WorkRng.Address, Type :=8) Arr = WorkRng.Formula Application.ScreenUpdating = False Application.Calculation =xlCalculationManual For i = 1 To UBound (Arr, 1) k = UBound (Arr, 2) For j = 1 To UBound (Arr, 2) / 2 xTemp = Arr(i, j) Arr(i, j) = Arr(i, k) Arr(i, k) = xTemp k = k - 1 Next Next WorkRng.Formula = Arr Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic End Sub

    Para añadir la macro a tu libro de Excel, sigue estos pasos. En cuanto ejecutes la macro, aparecerá la siguiente ventana de diálogo, pidiéndote que selecciones un rango:

    Seleccione toda la tabla, incluida la fila de cabecera, y haga clic en OK En un momento, se invierte el orden de los datos en las filas:

    Voltear datos en filas con Ultimate Suite para Excel

    Del mismo modo que para voltear columnas, puede utilizar nuestra Ultimate Suite para Excel para invertir el orden de los datos en las filas. Sólo tiene que seleccionar un rango de celdas que desee voltear, ir a la opción Datos de Ablebits tab> Transformar y haga clic en Flip > Volteo horizontal .

    En el Volteo horizontal elija las opciones apropiadas para su conjunto de datos. En este ejemplo, estamos trabajando con valores, por lo que elegimos Sólo pegar valores y Conservar formato :

    Haga clic en el botón Flip y su mesa se invertirá de izquierda a derecha en un abrir y cerrar de ojos.

    Así es como se voltean los datos en Excel. Gracias por leer y ¡espero verte en nuestro blog la semana que viene!

    Michael Brown es un entusiasta de la tecnología dedicado y apasionado por simplificar procesos complejos utilizando herramientas de software. Con más de una década de experiencia en la industria de la tecnología, ha perfeccionado sus habilidades en Microsoft Excel y Outlook, así como en Google Sheets y Docs. El blog de Michael está dedicado a compartir su conocimiento y experiencia con otros, brindando consejos y tutoriales fáciles de seguir para mejorar la productividad y la eficiencia. Ya sea un profesional experimentado o un principiante, el blog de Michael ofrece información valiosa y consejos prácticos para aprovechar al máximo estas herramientas de software esenciales.