Notifications
Clear all

Separar Letra de número... Acrescentar a letra e somar 1

4 Posts
3 Usuários
0 Reactions
1,092 Visualizações
(@tiagogn)
Posts: 61
Trusted Member
Topic starter
 

Pessoal,

Boa noite.

Alguém tem alguma sugestão para a seguinte situação?

Tenho uma coluna com um ID... E00001 (Primeiro código)...

Quero colocar a sequência dele nas próximas linhas... Então ... na próxima linha ele vai manter o E e vai acrescentar 1 ao número... Portanto... Ele fica E00002 ... E00003 ... E por aí vai... Isso está sendo colocado como resultado de um lançamento de formulário... Cada cadastro realizado vai sendo gerado esse código...

Agradeço desde já pelo apoio!!

Abs.

Atenciosamente,

Tiago Gonçalves

 
Postado : 29/01/2017 3:33 pm
brunoxro
(@brunoxro)
Posts: 698
Honorable Member
 

Boa noite tiago,

Teste:

Sub PreencherID()
    
    'OBS: Estou supondo que os dados estão na coluna A
    'OBS: Também estou supondo que o primeiro valor da coluna foi preenchido (E000001)"
    
    Rem Declaro as váriaveis
    Dim MyCell    As Range
    Dim Nlin      As Double
    
    Rem Descubro o número de linahs
    Nlin = Range("A" & Rows.Count).End(xlUp).Offset(1, 0).Row
    
    Rem seleciono a última célula não preenchida
    Cells(Nlin, 1).Select
    
    Set MyCell = Selection
    
    MyCell.NumberFormat = "@"
    
    Rem Adiciona zeros e soma 1 do valor da linha anterior
    MyCell = "0000000" & Right(MyCell.Offset(-1, 0), 6) + 1
    
    MyCell = "E" & CStr(Right(MyCell, 6))
        
End Sub

Se tiver alguma dúvida é só avisar.

OBS: Coloque uma planilha de exemplo se precisar de ajuda.

att,

 
Postado : 29/01/2017 6:47 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

.0
Pelo que você diz na pergunta, é simples ... coloque em A1 E00001 ... em A2 E00002 ... pronto agora é só selecionar e arrastar até onde desejar!!!
.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 29/01/2017 7:33 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Com fórmulas:

A2: E00001
A3:

="E"&texto(EXT.TEXTO($A2;2;5)+1;"00000")

E arrasta, ou escreva esta fórmula a cada inserção do formulário, e em seguida, cole valor, ou seja, pode usar a fómula acima, direto na célula, OU, via ódigo, assim:

Range("A" & Linha).FormulaR1C1="=""E""&TEXT(MID(R[-1]C,2,5)+1,""00000"")"

p.s.: não testei, mas é pra funcionar...

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 30/01/2017 7:04 am