orden

11/05/2005 - 16:32 por paula | Informe spam
como hago para ordenar por mas de tres columnas a la vez?
 

Leer las respuestas

#1 Héctor Miguel
12/05/2005 - 02:50 | Informe spam
hola, paula !

como hago para ordenar por mas de tres columnas a la vez?



excel 'ofrece' [un maximo de] 3 criterios de ordenacion... ->por vez<-
-> si se trata de mas de 3 criterios...
1) seleccionas el rango completo y utilizas [menu] datos / ordenar...
2) ordena 'primero los ultimos' criterios [de derecha->izquierda / abajo->arriba]
3) continua ordenando los criterios 'pendientes' [SIN modificar la seleccion y de 3 en 3]
-> o si lo prefieres... utiliza una macro +/- como la que te expongo al final [es solamente un ejemplo]

saludos,
hector.
en un modulo de codigo 'normal' ==Sub OrdenarTodas()
Dim Cols() As String, Sig As Integer
With ActiveCell.CurrentRegion
ReDim Cols(.Columns.Count)
For Sig = 1 To .Columns.Count
With .Cells(1, Sig)
Cols(Sig) = Mid(.Address, 2, InStr(2, .Address, "$") - 2)
End With
Next
For Sig = .Columns.Count To 1 Step -3
If Sig = 1 Then
.Sort _
Key1:=.Columns(Cols(Sig)), Order1:=xlAscending
ElseIf Sig = 2 Then
.Sort _
Key1:=.Columns(Cols(Sig - 1)), Order1:=xlAscending, _
Key2:=.Columns(Cols(Sig)), Order2:=xlAscending
Else
.Sort _
Key1:=.Columns(Cols(Sig - 2)), Order1:=xlAscending, _
Key2:=.Columns(Cols(Sig - 1)), Order2:=xlAscending, _
Key3:=.Columns(Cols(Sig)), Order3:=xlAscending
End If
Next
End With
End Sub

Preguntas similares