Ordenar columnas en Excel según necesidad

¿Cómo estas?. Recibe mis saludos y aquí con una duda o más que duda o un traba lenguas, o también se podría llamar un puzzle

Estas son las columnas que están

Tengo esta macro para ordenarlas

Sub Ordenar1()' Acceso directo: CTRL+r    Columns("C:C").Select    Selection.Cut    Columns("A:A").Select    Selection.Insert Shift:=xlToRight    Columns("E:E").Select    Selection.Cut    Columns("B:B").Select    Selection.Insert Shift:=xlToRight    Columns("D:D").Select    Selection.Cut    Columns("C:C").Select    Selection.Insert Shift:=xlToRight    Columns("E:E").Select    Selection.Cut    Columns("G:G").Select    Selection.Insert Shift:=xlToRight    Range("A2").SelectEnd Sub

Pero, he podido llegar a esto

Cosa que no me satisface. He estado dándole a los dados je je pero no logo encajarlos en su debido lugar al cual quiero.

Como puedes ver, se puede observar la posición que deseo al pisar el botón. Te envío el libro a tu mail.

1 respuesta

Respuesta
2

Te anexo la macro para ordenar las columnas

Sub OrdenarColumnas()
'Por.Dante Amor
    Application.ScreenUpdating = False
    For i = 9 To 4 Step -1
        Set b = Rows(1).Find(Cells(i, "I"), lookat:=xlWhole)
        If Not b Is Nothing Then
            If b.Column <> 1 Then
                Columns(b.Column).Cut
                Columns("A:A").Insert Shift:=xlToRight
            End If
        End If
    Next
    Application.ScreenUpdating = True
    MsgBox "Orden terminado"
End Sub

Gracias Dam, por fin mi puzzle tuvo que terminarlo otro en 5 minutos (o menos aun) y yo tuve una mañana (3 horas + 1 en la tarde = 4 horas jugando y perdí) y parte de la tarde sin poder resolver mi puzzle

A veces pasa que no se encuentra la solución, a lo mejor yo tenía la mente despejada, lo que hace la macro es tomar la última columna de tu lista y ponerla en la primera columna, después toma la penúltima y ponerla en la primera columna, y así hasta llegar a la primera columna, es decir, que siempre la nueva columna desplaza a la anterior hacia a la derecha, de tal suerte, que la última en acomodarse es la primera columna, ya quedará en la primera columna y la primera que se insertó terminará en último.

La otra idea fue poner los nombres de las columnas en la lista.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas