Formatação com pont...
 
Notifications
Clear all

Formatação com ponto, números e texto

5 Posts
2 Usuários
0 Reactions
787 Visualizações
(@alan-gomes)
Posts: 0
New Member
Topic starter
 

Olá pessoal!

Sou novo no fórum e visto que há inúmeros usuários avançados e muito mais entendidos de excel do que eu, vim pedir por ajuda!

Pesquisei inúmeros sites e não consegui encontrar uma solução para essa situação:

No estoque da empresa, trabalhamos com um formato de identificação de estoque que utiliza a seguinte máscara do exemplo:

05.01.B.15

Revirei a internet e descobri que pela formatação personalizada eu não consigo fazer isso pois ela não aceita valores alfabéticos, apenas numéricos.
E foi então que pensei em utilizar uma macro para isso, no entanto, eu não manjo nada de macros. Pesquisei bastante pra ver se encontrava algum
código que encaixasse uma solução pra essa condição, mas sem sucesso.

Sendo assim, será que algum colega do fórum conseguiria me dar uma mão com isso? Preciso apenas que a macro siga esse formato em uma determinada coluna
para que quando o usuário insira os valores, ele já "auto formate" a célula com esse padrão que mencionei no exemplo.

 
Postado : 06/01/2017 5:51 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 


Veja se atende, considerando a coluna A:

Private Sub Worksheet_Change(ByVal Target As Range)

Application.EnableEvents = False

If Target.Column <> 1 Then
Exit Sub
Else
cod = Target.Value
ncod = Left(cod, 2) & "." & Mid(cod, 3, 2) & "." & Mid(cod, 5, 1) & "." & Right(cod, 2)
End If
Target.Value = ncod

Application.EnableEvents = True

End Sub

 
Postado : 06/01/2017 7:21 am
(@alan-gomes)
Posts: 0
New Member
Topic starter
 

Edson, primeiramente muito obrigado pela ajuda!

Fiz o teste e deu quase certo!

Todas posições alfabéticas funcionaram perfeitamente pra minha necessidade exceto qualquer posição em que o terceiro grupo de caracteres alfabeticos seja a letra E. Como por exemplo 01.02.E.01 ou 99.99.E.99

Para as demais letras funcionou direitinho!

O que poderia ser? O Excel reconhece a letra E como um operador lógico? :?:

 
Postado : 06/01/2017 11:43 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Devido a maneira que o Excel entende números em forma exponencial (2^99--> 2E99); assim antes da rotina de formatação "entrar" o sistema já efetuou a "assimilação".
Para contornar esse choque, formate previamente a coluna como Texto

 
Postado : 06/01/2017 12:42 pm
(@alan-gomes)
Posts: 0
New Member
Topic starter
 

Reinaldo, muito obrigado pela sua complementação!

Dessa maneira funcionou perfeitamente!

Muito obrigado mesma a todos que me ajudaram!

Grande abraço!

 
Postado : 06/01/2017 12:58 pm