none
Valores no VBA mostra como 9.66 mas qdo gravo no excel aparece como 966.00 RRS feed

  • Pergunta

  • fiz o codigo VBA no excel em portugues, mas fui testar no excel ingles...no VBA aparece o valor certo mas qdo mando gravar o valor fica diferente...exemplo no vba valor 9.66 no excel aparece 966.00...

    tem como arrumar isso

    obrigado

    abraços

    Alvaro

    quarta-feira, 4 de abril de 2012 13:09

Respostas

  • Tenta utilizar uma variável como string, substituir o ponto por vírgula (ou vice-versa) e converter a string para decimal.

    Fiz um teste aqui e deu certo.

    Sub gravardec()

    Dim valordec1 As String

    valordec1 = Plan1.Cells(1, "A").Value

    CDec (valordec1) 'converte a string em decimal

    MsgBox Replace(valordec1, ".", ",") 'converte ponto para virgula, se precisar inverta primeiro virgula e depois ponto

    End Sub

    Espero ter ajudado.

    Abraço,

    Ricardo

    quarta-feira, 4 de abril de 2012 19:38

Todas as Respostas

  • Tenta utilizar uma variável como string, substituir o ponto por vírgula (ou vice-versa) e converter a string para decimal.

    Fiz um teste aqui e deu certo.

    Sub gravardec()

    Dim valordec1 As String

    valordec1 = Plan1.Cells(1, "A").Value

    CDec (valordec1) 'converte a string em decimal

    MsgBox Replace(valordec1, ".", ",") 'converte ponto para virgula, se precisar inverta primeiro virgula e depois ponto

    End Sub

    Espero ter ajudado.

    Abraço,

    Ricardo

    quarta-feira, 4 de abril de 2012 19:38
  • Ricardo,

    funcionou perfeitamente...obrigado

    abraços

    • Sugerido como Resposta Ricardo Dezan quinta-feira, 5 de abril de 2012 19:35
    • Não Sugerido como Resposta Ricardo Dezan quinta-feira, 5 de abril de 2012 19:44
    quinta-feira, 5 de abril de 2012 01:50