Sumário
Índice 🔎︎

# Função Format

Converte uma expressão numérica em uma string e a formata de acordo com o formato que você especificar.

### Sintaxe:

    Formatar(expressão [, format As String]) As String

### Parâmetros:

expression: Expressão numérica que você deseja converter em uma string formatada.

format: Caractere que especifica o código de formato do número. Se format for omitido, a função Formatar funciona como a função LibreOffice Basic Str().

### Valor de retorno:

Caractere texto.

## Códigos de formatação

A lista a seguir descreve os códigos que você pode usar para formatar uma expressão numérica:

0: se expressão tiver um dígito na posição do 0 no código formato, o dígito será exibido; do contrário, será exibido 0.

Se a expressão tiver menos dígitos que a quantidade de zeros no código format (em qualquer lado do decimal), serão exibidos zeros à esquerda ou à direita. Se a expressão tiver mais dígitos à esquerda do separador decimal do que o número de zeros no código format, os dígitos adicionais serão exibidos sem formatação.

As casas decimais na expressão são arredondadas de acordo com o número de zeros exibidos que aparecem após o separador decimal no código Format.

#: se Expressão contém um dígito na posição do espaço reservado para # no código Format, o dígito será exibido; do contrário, nada será exibido nesta posição.

Este símbolo funciona como o 0, exceto pelo fato de que os zeros à esquerda ou à direita não serão exibidos se houver mais caracteres # no código Format do que dígitos na Expressão. Serão exibidos apenas os dígitos relevantes do Expressão.

.: o espaço reservado para decimal determina o número de casas decimais à esquerda e à direita do separador decimal.

Se o código Format contiver somente espaços reservados para # à esquerda deste símbolo, os números menores que 1 começarão com um separador decimal. Para sempre exibir um zero à esquerda dos números fracionários, use o 0 como um marcador para o primeiro dígito à esquerda do separador decimal.

%: Multiplique a Expressão por 100 e insira o símbolo de porcentagem (%) onde a Expressão aparecer no código Format.

E- E+ e- e+ : Se o código Format contiver ao menos um marcador de posição de dígito (0 ou #) à direita do símbolo E-, E+, e- ou e+, a Expressão será exibida em um formato científico ou exponencial. A letra E ou e será inserida entre o número e o expoente. O número de marcadores de posição para dígitos à direita do símbolo determina o número de dígitos no expoente.

Se o expoente for negativo, o sinal de subtração será exibido diretamente antes de um expoente com E-, E+, e-, e+. Se o expoente for positivo, o sinal de adição só será exibido antes de expoentes com E+ ou e+.

O delimitador de milhares será exibido se o código Format exibir o delimitador entre marcadores de posição dos dígitos (0 ou #).

O uso do ponto como separador de milhares e de decimais é dependente das configurações regionais. Quando usar um número no código fonte Basic, sempre use um ponto como separador decimal. O caractere exibido como separador decimal depende no formato de número usado no seu sistema.

- + $ ( ) espaço: O sinal de adição (+), subtração (-), cifrão ($), espaço ou parênteses inserido diretamente no código Format será exibido com um caractere literal.

Para exibir caracteres diferentes dos listados aqui, você deve precedê-los de uma barra invertida (\) ou colocá-los entre aspas (" ").

\ : A barra invertida exibe o próximo caractere no código Format.

Os caracteres no código Format que tem um significado reservado só podem ser mostrados como caracteres literais se estiverem precedidos de uma barra invertida. A barra invertida não é exibida, a menos que você digite duas barras invertidas (\\) no código de formatação.

Os caracteres que devem ser precedidos de uma barra invertida no código de formato para serem exibidos como caracteres literais são: caracteres de formatação de data e hora (a, c, d, h, m, n, p, q, s, t, w, y, /, :), caracteres de formatação de números (#, 0, E, %, e, vírgula, ponto) e caracteres de formatação de cadeia de caracteres (@, &, <, >, !).

Você também pode usar os formatos de número predefinidos. Com exceção do "Número Geral", todos os códigos de formato predefinidos retornam o número como um número decimal com duas casas decimais.

Se você usar formatos predefinidos, o nome do formato deverá estar entre aspas.

## Formato predefinido

General Number: os números são exibidos da forma como são inseridos.

Currency: insere um sinal de cifrão na frente do número e coloca os números negativos entre parênteses.

Fixed: exibe pelo menos um dígito na frente do separador decimal.

Standard: exibe os números com um separador de milhar.

Percent: multiplica o número por 100 e acrescenta a ele um sinal de porcentagem.

Scientific: Exibe números no formato científico (por exemplo, 1.00E+03 for 1000).

Um código Format pode ser dividido em três seções separadas por ponto e vírgula. A primeira parte define o formato para valores positivos, a segunda para valores negativos e, a terceira, para zero. Se você especificar somente um código Format, ele será aplicado a todos os números.

Você pode definir o local utilizado para controlar o formato de números, datas e moedas no LibreOffice Basic em LibreOffice - PreferênciasFerramentas - Opções - Configurações de idioma - Idiomas. Nos códigos de formato do Basic, o ponto decimal (.) sempre será utilizado como espaço reservado para o separador decimal definido para sua localidade e será substituído pelo caractere correspondente.

O mesmo se aplica para as configurações de localidade para data, hora e formatos monetários. O código de formatação do Basic será interpretado e exibido de acordo com suas configurações de localidade.

### Códigos de erro:

5 Chamada de procedimento inválida

### Exemplo:

    Sub ExampleFormat
        MsgBox Format(6328.2, "##,##0.00")
        ' sempre use um ponto como separador decimal quando digitar números no código fonte Basic.
        ' exibe, por exemplo, 6,328.20 em Inglês, 6.328,20 em Alemão.
    End Sub

Tópicos relacionados

Códigos de formatos numéricos

Funções de String