MS Access 2003 - formatar um número com vírgulas e autodecimal

1

Em um relatório, tenho um controle vinculado a uma coluna que pode ter até três casas decimais.

Eu quero que o número seja formatado com vírgulas separando milhares e milhões, mas também quero que o número de casas decimais seja automático, de modo que, se não houver nenhuma parte decimal, nenhum decimal será mostrado.

1234.567 -> 1,234.567
1234.560 ->  1,234.56
1234.500 ->   1,234.5
1234.000 ->     1,234

O formato geral me dará as casas decimais automáticas, mas sem vírgulas. O formato padrão fornece a vírgula, mas é fixado em duas casas decimais. Fazendo meu próprio = Formatar (Número, "#, ## 0. #") deixa o ponto decimal e não alinha corretamente, com espaço extra à direita do número.

Eu tenho que escrever minha própria função VB para dar o formato que eu quero? Parece bobo que o Access (aparentemente) não possa fazer isso da caixa.

Isso também parece realmente horrível, embora funcione.

=Replace(Replace(Replace(Replace(Replace( _
  Format(Number, "#,##0.000") & "x", _
  "0x", "x"), "0x", "x"), "0x", "x"), ".x", ""), "x", "")
    
por ErikE 08.04.2010 / 03:54

1 resposta

3

Coloque isso na propriedade de formato de caixa de texto: #, ###. ###

    
por 15.05.2010 / 18:35