About Me

A minha foto
JRod - PORTUGAL
Microsoft [MVP] - Excel (10º ano consecutivo)
Ver o meu perfil completo
Com tecnologia do Blogger.

Seguidores

Estatisticas

Free Blog Counter

eXTReMe Tracker
2005-12-07
Por norma, a ordenação ascendente ou descendente, é efectuada de cima para baixo (Top to Bottom):



mas também pode ser efectuada da esquerda para a direita (Left to Right):



No entanto, como fazer, de modo a efectuarmos múltiplos sorts Left to Right. como, por exemplo, no seguinte Range:



de maneira a, de uma só vez, ficar como segue?



Tom Ogilvy, mostrou, em 2001, num newsgroup de Excel, como se pode fazer este tipo de sort, através de VBE.

O Código, adaptado:

Private Sub CommandButton1_Click()
'baseado numa macro de Tom Ogilvy, 2001-03-24, em "Excel Programming"
Dim rw As Range
If Selection.Columns.Count = 1 Then
   MsgBox "Seleccionar mais do que 1 célula ou mais do que 1 coluna"
   Exit Sub
End If
For Each rw In Selection.Rows
    rw.Sort key1:=rw, Order1:=xlAscending, Header:=xlNo, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight
Next
End Sub