locked
Macro classificar ordem crescente

    Question

  • Tenho uma planilha com 1600 linhas e 5 colunas. Os valores das colunas estão colocados de forma aleatoria. Para coloca-los em ordem crescente preciso fazer de linha em linha da esquerda para a direita so que sao 1600 linhas. Alguem teria uma macro que fizesse essa tarefa de uma vez ? Me ajudaria demais. Obrigado.
    Wednesday, September 27, 2006 6:26 PM

Answers

  • Tuta... Fantastico !!! , funcionou perfeitamente e em poucos minutos eu tive toda a ordenação concluida com perfeição. Muitíssimo obrigado !!

    Forte abraço.

    Thursday, September 28, 2006 1:12 PM

All replies

  • Olá Cespim!

    Não entendi bem sua dúvida. Vc tem 5 colunas, cada um com 1600 linhas, totalizando 8000 dados, é isso?

    Vc precisa classificar cada linha da esquerda para a direita (fazendo com que a primeira coluna tenha sempre o maior valor da linha), ou vc quer colocar os 8000 dados numa única coluna pra depois classificar tudo?

    Se vc puder dar um exemplo da planilha, ficaria mais fácil de entender e te ajudar.

     

    Wednesday, September 27, 2006 7:26 PM
  • Oi Raphael ,

    Eu tenho 5 colunas (A,B,C,D e E) e cada coluna vai da linha 1 a linha 1600 preenchidas com numeros. Preciso ordenar esses numeros em ordem crescente do menor na coluna A para o maior na coluna E nas 1600 linhas e eu só consigo fazer isso de linha em linha mandando o Excel classificar em ordem crescente da esquerda para a direita. Se eu conseguisse uma macro que fizesse essa classificação automatica seria fantastico. Desde já, muito obrigado pela atenção.

              Situaçao Atual                               Situaçao Pretendida

           A    B     C    D    E                                   A   B   C   D   E         

    1    10   7      9     5    3                            1     3    5    7    9   10

    2      2   5      8     1    9                             2     1    2    5   8     9

    3     9    6     10    3    7                             3     3    6    7   9    10

     

    Abraço.

    Wednesday, September 27, 2006 9:18 PM
  • Sub Macro1()
    '
    ' Macro1 Macro
    ' Macro gravada em 27/9/2006 por Carlos
    '

    '
        Dim cr As Range
        Set cr = Range("i3")
        For i = 1 To cr
            Range("F56000").Select
            Selection.End(xlUp).Select
            ActiveCell.Offset(1, -5).Range("A1:E1").Select
            Selection.Copy
            Range("G1").Select
            Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
                False, Transpose:=True
            Application.CutCopyMode = False
            Selection.Sort Key1:=Range("G1"), Order1:=xlAscending, Header:=xlGuess, _
                OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
                DataOption1:=xlSortTextAsNumbers
            Selection.Copy
            Range("F56000").Select
            Selection.End(xlUp).Select
            ActiveCell.Offset(1, -5).Range("A1").Select
            Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
                False, Transpose:=True
            Range("F56000").Select
            Selection.End(xlUp).Select
            ActiveCell.Offset(1, 0).Range("A1").Select
            Application.CutCopyMode = False
            ActiveCell.FormulaR1C1 = "ok"
            ActiveCell.Offset(0, 1).Range("A1").Select
            Columns("G:G").Select
            Selection.ClearContents
            Range("G1").Select
        Next
            Columns("F:F").Select
            Selection.ClearContents
            Range("G1").Select
    End Sub

    12 quantidade registro
    1 5 10 15 82 0 quantidade registro ordenados
    1 4 10 45 65 12 a ordenar
    3 6 10 14 15
    5 11 16 21 28
    5 69 100 500 1200
    1 12 54 598 698
    1 2 5 11 659
    7 9 14 16 21
    1 12 24 55 98
    1 2 11 45 65
    5 8 10 14 94
    9 12 40 58 98

    Wednesday, September 27, 2006 10:47 PM
  • Tuta... Fantastico !!! , funcionou perfeitamente e em poucos minutos eu tive toda a ordenação concluida com perfeição. Muitíssimo obrigado !!

    Forte abraço.

    Thursday, September 28, 2006 1:12 PM