quinta-feira, 17 de janeiro de 2019

Formatar texto numérico com zeros à esquerda

Sempre aparace uma necessidade de colocar zeros à esquerda em textos que representam números.

Exemplo clássico é transformar o número que represente um mês, em forma de string, com o zero antes.

Tipo: 
Dim sMes AS String
Dim sAno AS STring

sAno = "" & YEAR( sAno )

sMes =  "" & Month( NOW() )      ' Resultará em 2019 1, enquanto que o desejável seria 201901.

Quase todo mundo tem uma função que faz isso. Eis a minha:



Function strZero(iNumero As Variant, iTam As Integer) As String

 Dim strTemp As String

  strTemp = String(iTam, "0")

 strZero = Right(strTemp & Trim(iNumero), iTam)

End Function

'
' Exemplo
'

Dim sMes AS String
Dim sAno AS STring

sAno = "" & YEAR( sAno )

sMes =  strZero(  Month( NOW() ), 2)   

' sMes = 201901.

OU

msgbox  "" & YEAR( now() ) & strZero(  Month( NOW() ), 2)   






Exemplo de uso: 

Nenhum comentário:

Formatar texto numérico com zeros à esquerda

Sempre aparace uma necessidade de colocar zeros à esquerda em textos que representam números. Exemplo clássico é transformar o número que ...