Página 1 de 1

Ordenação de valores em coluna

Enviado: 05 Set 2017 às 22:15
por Domingsp
Olá, tenho um codigo com o objetivo de colocar, em ordem crescente na Coluna C, 4 valores que estão em Col A. Isso é feito ao acionar o botão verde associado a macro ORDENA. Só que nada ocorre ao executar.
Ao depurar o codigo é apontado "Erro de definição de aplicativo ou de definição de objeto".
Não sei onde está o erro. Se alguem puder dar uma olhada, fico grato.
O código abaixo e anexei a pasta ORDENACAO em que é executada a macro
Código: Selecionar todos
Sub ORDENA() ' Ordenar 4 Numeros em Crescente
Dim m As Integer, n As Integer, Aux As Integer
 Sheets("Plan1").Activate
    For m = 1 To 3
        For n = m + 1 To 4
            If Cells(m, 1) > Cells(n, 1) Then
                Aux = Cells(n, 1)
                Cells(n, 1) = Cells(m, 1)
                Cells(m, 1) = Aux
                Cells(i + 1, 3) = Cells(m, 1): i = i + 1
            End If
        Next n
    Next m
End Sub

Re: Ordenação de valores em coluna

Enviado: 06 Set 2017 às 11:18
por osvaldomp
Experimente:
Código: Selecionar todos
Sub ORDENAV2() ' Ordenar 4 Numeros em Crescente
Dim m As Integer, n As Integer, Aux As Integer
 Sheets("Plan1").Activate
    For m = 1 To 3
        For n = m + 1 To 4
            Cells(m, 3) = Cells(m, 1): Cells(m + 1, 3) = Cells(m + 1, 1)
            If Cells(m, 1) > Cells(n, 1) Then
                Aux = Cells(n, 1)
                Cells(n, 1) = Cells(m, 1)
                Cells(m, 1) = Aux
                Cells(m, 3) = Aux: Cells(m + 1, 3) = Cells(n, 1)
            End If
        Next n
    Next m
End Sub
no lugar desta linha
Código: Selecionar todos
Cells(m, 3) = Aux: Cells(m + 1, 3) = Cells(n, 1)
você pode utilizar uma das duas abaixo
Código: Selecionar todos
Cells(m, 3) = Cells(m, 1): Cells(m + 1, 3) = Cells(n, 1)
Cells(m, 3) = Cells(m, 1): Cells(m + 1, 3) = Cells(m + 1, 1)

Re: Ordenação de valores em coluna

Enviado: 06 Set 2017 às 22:23
por Domingsp
Obrigado osvaldomp. É isso !