Fórum Excel Bácico, Avançado e Vba

Este fórum é destina a usuário de Excel, que queiram compartilhar informações a básicas, avançadas e programação em VBA...
 
InícioInício  FAQFAQ  BuscarBuscar  MembrosMembros  GruposGrupos  Registrar-seRegistrar-se  Login  

Compartilhe | 
 

 Numeração automática e Ordem alfabética simultâneas VBA

Ver o tópico anterior Ver o tópico seguinte Ir em baixo 
AutorMensagem
Sérgio Quevedo



Mensagens : 2
Data de inscrição : 09/07/2015

MensagemAssunto: Numeração automática e Ordem alfabética simultâneas VBA   Qui Jul 09, 2015 4:22 pm

Pessoal, bom dia.
Tenho uma planilha VBA muito simples, com apenas duas colunas.
Na coluna “A”, existe um código sequencial, começando pelo número 1 e;
Na coluna “B”, constam os nomes.
Preciso de um comando que permita numerar, automaticamente, a coluna “A” e que coloque a coluna “B” em ordem alfabética, simultaneamente.
Eu tenho os comandos e eles funcionam bem, separadamente.
A questão da numeração automática complica, a partir do momento em que a ordem alfabética muda a posição dos códigos. Exemplificando:
Código Nome
1 JOÃO
2 MARIA
3 PAULO
4 MARGARIDA
5 JOSÉ

Só que quando a ordem alfabética é acionada, a planilha fica assim:
Código Nome
1 JOÃO
5 JOSÉ
4 MARGARIDA
2 MARIA
3 PAULO

Como se pode observar, na última linha da coluna “A” consta o código 3 e não mais o 5, em virtude da ordem alfabética ter sido aplicada. Assim, a numeração deixa de ser sequencial, para o próximo lançamento que, no caso, deveria ser o Código 6.
O Código não pode ser alterado. Ele deve ficar fixo para o mesmo nome do lançamento original.
Na verdade, creio ser necessário um comando que busque o último número lançado ou o maior valor da coluna”A”.
Sou leigo em VBA. Se alguém puder ajudar, agradeço, antecipadamente, por dicas e sugestões.
Um abraço.

Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: Numeração automática e Ordem alfabética simultâneas VBA   Qui Jul 09, 2015 11:01 pm

Boa tarde!!

Tente algo como isso deve ajuda..
Código:
Sub AleVBA_1062()
Dim rng As Range, col As Long, Rw As Long, LastRow As Long
Static Pos As Integer
'Caso queira um ViceVersa de Aces ou Desc
    Pos = IIf(Pos = xlAscending, xlDescending, xlAscending)
    col = 2
    Rw = Range("B1").CurrentRegion.Rows.Count
    Set rng = Range("A2:B" & Rw)
    If rng.Count > 1 Then rng.Sort Cells(1, col), Pos
    LastRow = Range("B65536").End(xlUp).Row + 1
    Range("A2:A" & LastRow).ClearContents
    Call AleVBA_Increment
End Sub
Código:
Sub AleVBA_Increment()
Dim loop_ctr As Integer
Dim LastRow As Long
LastRow = Range("B65536").End(xlUp).Row - 1

For loop_ctr = 1 To LastRow
  ActiveSheet.Range("A" & loop_ctr).Offset(1).Value = loop_ctr
Next loop_ctr

End Sub

Att
Voltar ao Topo Ir em baixo
Ver perfil do usuário
Sérgio Quevedo



Mensagens : 2
Data de inscrição : 09/07/2015

MensagemAssunto: Re: Numeração automática e Ordem alfabética simultâneas VBA   Sex Jul 10, 2015 6:57 am

Alexandre, obrigado pela ajuda.

Acho que eu não fui claro. O que eu preciso é que na UserForm apareça, automaticamente, o novo número sequencial, o código 3.

Reforço que o código não pode ser alterado, em relação ao cadastramento original, ou seja, se eu lançar:

Código   Nome
1          JOÃO

Quando eu lançar o segundo nome, o comando aplica a ordem alfabética, ficando assim:

Código   Nome
2          ALEXANDRE
1          JOÃO

Assim, o código 1 sempre pertencerá ao João, da mesma forma que o código 2 ao Alexandre, após a execução do comando de ordem alfabética da coluna "B".

Quando eu fosse lançar o terceiro nome, gostaria que o número 3 estivesse na TextBox1, automaticamente.

Por isso, eu comentei que creio ser necessário um comando que busque o último número/código lançado ou o maior valor da coluna”A” +1.

É possível?

Obrigado pela atenção.
Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: Numeração automática e Ordem alfabética simultâneas VBA   Sex Jul 10, 2015 8:19 pm

Boa tarde!!

Eu preciso do seu arquivo modelo!

Att
Voltar ao Topo Ir em baixo
Ver perfil do usuário
Conteúdo patrocinado




MensagemAssunto: Re: Numeração automática e Ordem alfabética simultâneas VBA   Hoje à(s) 2:52 am

Voltar ao Topo Ir em baixo
 
Numeração automática e Ordem alfabética simultâneas VBA
Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo 
Página 1 de 1
 Tópicos similares
-
» Tópicos em ordem alfabética
» Duvida sobre numeração automática
» Definir início de numeração automática
» [Ideia] Rangers, a ordem dos arqueiros
» Operadores Bitwise – Matemática Lógica Aula 2 de 2

Permissão deste fórum:Você não pode responder aos tópicos neste fórum
Fórum Excel Bácico, Avançado e Vba :: Avançado/VBA :: Excel Avançado/VBA-
Ir para: