Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Davidmg

Formatar Número

Recommended Posts

É o seguinte, tenho uma valor -938265 que é Nove Mil Trezentos e Oitenta e Dois reias e Sessenta e Cinco centavos....como faço pra mostrar esse valor assim: -9.382,65

 

Já tentei usar o Format Number <%=FormatNumber(Valor,2)%> mas apareceu assim: -938.265,00

 

E agora, alguém sabe como fazer?

 

Aguardo.

Valewwwwww

 

http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você percebeu que esse número está sem pontuação certo ?? Ou seja, ele não está "Correto".

 

Bom para colocar a pontuacao antes dos dois último dígitos utilize essa função

For i = 1 to Len(valor)if Len(Mid(i,len(Valor))) = 2 then    valor = mid(i,len(valor)) & "," & Right(valor,2)End ifNext

E depois você formata

 

<%=FormatNumber(Valor,2)%>

Ps: Eu fiz essa função agora e não testei, se der algo de errado avise.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara...

Eu testei e não funcionou, mas agora eu já arrumei.

Segue a função certa

 

For i = 1 to Len(valor)	if Len(Mid(valor,i,len(Valor))) = 2 then  valor = mid(valor,1,i - 1) & "," & Right(valor,2)  Exit For	End ifNext

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara...

Eu testei e não funcionou, mas agora eu já arrumei.

Segue a função certa

 

For i = 1 to Len(valor)	if Len(Mid(valor,i,len(Valor))) = 2 then  valor = mid(valor,1,i - 1) & "," & Right(valor,2)  Exit For	End ifNext

<{POST_SNAPBACK}>

Amigo, não deu certo não...fica do mesmo jeito o número...o que pode ser?

 

Grato.

David

Compartilhar este post


Link para o post
Compartilhar em outros sites

David.

 

Como está seu número, para mim está funcionado.

<{POST_SNAPBACK}>

Me desculpe Marcelo,

 

Foi eu que testei errado mesmo, eu fui mudar o nome Valor pra outro e esqueci de mudar de todas as linhas...agora está funcionando certinho.

 

Outra dúvida: já tenho alguns números que já vem com a virgula...como faço pra verificar se o numero nao tiver virgula ele chama sua função pra colocar a virgula e se já tiver a virgula daí ele nao chama sua funcao....você sabe?

 

Agradeço.

David

Compartilhar este post


Link para o post
Compartilhar em outros sites

Usa a função "INSTR"...

 

A função INSTR retorna a posição (dentro da String) do caracter que você está procurando...

Exemplo

 

NrPosicao = Instr(1,"/","Teste/TesteTeste")

O Nr POsicao será 6, ou seja, a posição da primeira barra que ela encontrou...

 

No seu caso você verifica se a String tem uma vírgula,

Exemplo

 

If Instr(1,",",Valor) > 0 then ''''Se ele não encontrar a vírgula ele retornará 0

Compartilhar este post


Link para o post
Compartilhar em outros sites

Marcelo,Testei o codigo acima e na máquina local funciona certinho (R$ 7.605,77), mas quando jogo no servidor (hospedo na hostlocation), nao funciona, fica assim (R$ 7.605.765,00) pq será?Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Posta o código que faz a função para gente dar uma olhada !!!

<{POST_SNAPBACK}>

Aí vai o código:

 

ASP

[*]<%

 

[*]Limatual "7605,765"

 

[*]If Instr(1,",",Limatual) < 0 then

 

[*] For i = 1 to Len(Limatual)

 

[*] if Len(Mid(Limatual,i,len(Limatual))) = 2 then

 

[*] Limatual mid(Limatual,1,i - 1) & "," & Right(Limatual,2)

 

[*] Exit For

 

[*] End if

 

[*] Next

 

[*]End If

 

[*]%>

 

[*]<%=FormatNumber(Limatual,2)%>

 

[*]

 

Aqui na máquina local aparece 7.605,77 e no servidor aparece 7.605.765,00

 

Estranho né...

Abraços

David

Compartilhar este post


Link para o post
Compartilhar em outros sites

Marcelo,Coloquei do jeito q você falow acima e agora saiu assim: 76.057,65E o certo seria assim: 7.605,77Parece q ele não está arredondando o 765 para 77....eu não o q pode ser.Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sabe o que eu to achando...É q tem numero que vem assim 7605,765 com 3 casas após a virgula e tem numero que assim 76057,65 com 2 casas após a virgula...será q é por isso?Tem como verificar se tem a virgula ou nao e se tiver, quantas casas existem depois dela pra formatar certinho o numero?Nossa, complicado isso hein....eu hein....Abraços,David

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.