Macro para invertir valores de una columna Excel

Compatibilidad: Excel 365 2021 2019 2016

En ocasiones, necesitamos invertir valores de una columna Excel, pudiendo aplicar macros.

Macro para invertir valores de una columna Excel

En la columna A disponemos de una serie de países, deseando invertir la posición de los valores:

 A
1País
2España
3México
4Colombia
5Perú
6Chile
7Argentina
8Ecuador
9Venezuela
10Bolivia
11Guatemala
12Costa Rica
13Panamá
  • CREAR MACRO
  1. Con Excel abierto.

  2. Pulsar la tecla Alt y mantener pulsada / Pulsar la tecla F11. Mostrará el editor de Visual Basic.

  3. Ir a: Barra de Menú / Insertar / Módulo. Mostrará la ventana del módulo donde escribimos la macro deseada:

  4. Escribir el código de la macro:

    Sub InvierteColumna()
    Dim Mi_Rango As Range
    Dim Rango_2 As Range
    Dim Invierte As Variant
    Dim i As Integer, j As Integer, k As Integer
    On Error Resume Next

    xTitleId = "Invierte Columna Excel"
    Set Rango_2 = Application.Selection
    Set Rango_2 = Application.InputBox("Range", xTitleId, Rango_2.Address, Type:=8)

    Invierte = Rango_2.Formula

    For j = 1 To UBound(Invierte, 2)

    k = UBound(Invierte, 1)

    For i = 1 To UBound(Invierte, 1) / 2

    xTemp = Invierte(i, j)
    Invierte(i, j) = Invierte(k, j)
    Invierte(k, j) = xTemp
    k = k - 1

    Next

    Next

    Rango_2.Formula = Invierte
    End Sub

  5. Guardar el libro con la extensión *.xlsm. Libro habilitado para macros.

  • EJECUTAR MACRO
  1. Ejecutar la macro. Mostrará ventana de invierte columna Excel.

    Ventana de rango
  2. Ir a: Seleccionar el rango: A2:A13.

  3. Ir a: Pulsar el botón Aceptar. Verificar como muestra invertidos los valores del rango.

En ocasiones, necesitamos invertir valores de una columna Excel, columna A en C
Nivel de dificultad: Experto VBA-Macros Excel Experto VBA - Macros

Un comentario en “Macro para invertir valores de una columna Excel

  • Para los que no sepan programar, sería mucho más sencillo numerar los países en la columna B, del 1 al 13. Y luego usar el botón de Ordenar, descendente

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.