Página 1 de 1
Classificar e ordenar dezenas - menor para o maior
Enviado: 16 Jun 2017 às 03:31
por ruymds
Olá pessoal,
possuo uma planilha sequencial de 15 dezenas aleatórias e preciso realizar a classificação e ordenação dessas. Porém, ao selecionar o comando de CLASSIFICAR no excel o mesmo não realizar.
4 5 6 7 8 23 10 13 14 20 21 22 9 24 25
1 2 3 5 6 7 8 9 10 11 13 14 20 22 24
1 2 3 5 6 7 8 9 10 11 13 14 20 22 25
1 2 3 5 6 7 8 9 10 11 13 14 20 23 24
3 25 6 7 8 9 10 13 14 20 21 22 23 24 5
1 2 3 5 6 7 8 9 10 11 13 14 20 23 25
São muitas linhas, teria como fazer essa classificação/ordenação sem a duplicação da planilha caso ocorra a utilização da função menor.
Segue anexo o modelo. Obrigado.
Re: Classificar e ordenar dezenas - menor para o maior
Enviado: 16 Jun 2017 às 08:55
por Deciog
ruymds , Bom Dia.
Se entendi o que você quer, confere este modelo
Se minha resposta foi útil, clique em obrigado
Decio
Re: Classificar e ordenar dezenas - menor para o maior
Enviado: 16 Jun 2017 às 09:06
por osvaldomp
Veja se a solução do arquivo abaixo ajuda.
Re: Classificar e ordenar dezenas - menor para o maior
Enviado: 16 Jun 2017 às 13:20
por Edcronos
uso de uma macro com array, bem rapida
http://www.comoganharnaloteria.com.br/f ... ent=279760
algo como essa que é facilmente ajustavel
Código: Selecionar todosSub Ordena_Seleção_decrescente()
coluna_inicial = "b"
coluna_final = "h"
Linha_inicial = 6
linha_final = 7
Coluno = Range(coluna_inicial & Linha_inicial, coluna_final & linha_final).Value2
Lfim = UBound(Coluno, 1): TCo = UBound(Coluno, 2)
ci1 = 1 ' coluna inicial de dados da array
For Lx = 1 To Lfim
inC = ci1
i = inC + 1
Do
a = Coluno(Lx, inC): b = Coluno(Lx, inC + 1)
If a < b Then
Coluno(Lx, inC) = b: C = a
Coluno(Lx, inC + 1) = C
If inC > ci1 Then inC = inC - 1
Else
inC = i: i = i + 1
End If
Loop Until inC = TCo
Next
'----------------------------------------------------------------------------------------------------
Range(coluna_inicial & Linha_inicial, coluna_final & linha_final).Value2 = Coluno
End Sub
Re: Classificar e ordenar dezenas - menor para o maior
Enviado: 16 Jun 2017 às 13:22
por ruymds
Então pessoal, agradeço pela dica mas não resolveu.
Seria algo assim
Matriz original:
4 5 6 7 8 23 10 13 14 20 21 22 9 24 25
1 2 3 5 6 7 8 9 10 11 13 14 20 22 24
1 2 3 5 6 7 8 9 10 11 13 14 20 22 25
1 2 3 5 6 7 8 9 10 11 13 14 20 23 24
3 25 6 7 8 9 10 13 14 20 21 22 23 24 5
1 2 3 5 6 7 8 9 10 11 13 14 20 23 25
Matriz Ordenada
1 2 3 5 6 7 8 9 10 11 13 14 20 22 24
1 2 3 5 6 7 8 9 10 11 13 14 20 22 25
1 2 3 5 6 7 8 9 10 11 13 14 20 23 24
1 2 3 5 6 7 8 9 10 11 13 14 20 23 25
3 5 6 7 8 9 10 13 14 20 21 22 23 24 25
4 5 6 7 8 9 10 13 14 20 21 22 23 24 25
Alguma outra alternativa?
Grato.
Re: Classificar e ordenar dezenas - menor para o maior
Enviado: 16 Jun 2017 às 13:38
por Edcronos
desculpe entendi errado
mas pq não usa o classificar do excel?
Classificar e ordenar dezenas - menor para o maior
Enviado: 16 Jun 2017 às 13:51
por ruymds
Edcronos,
utilizei mas não classificou.
Re: Classificar e ordenar dezenas - menor para o maior
Enviado: 16 Jun 2017 às 15:10
por osvaldomp
Código: Selecionar todosSub OrdenaLinhasV2()
Dim k As Long
For k = 1 To Cells(Rows.Count, 1).End(3).Row
Cells(k, 1).Resize(, 15).Sort Key1:=Cells(k, 1), Order1:=xlAscending, Orientation:=xlLeftToRight
Next k
ActiveSheet.Sort.SortFields.Add Key:=Range("A1"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortTextAsNumbers
With ActiveSheet.Sort
.SetRange Range("A1:O" & Cells(Rows.Count, 1).End(xlUp).Row)
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
Classificar e ordenar dezenas - menor para o maior
Enviado: 16 Jun 2017 às 15:27
por ruymds
Obrigado Osvaldo, e aos demais que indicaram possíveis soluções.
Obrigado mesmo.