Skip to main content

Funções de conversão

Uma função de conversão converte um formato ou tipo de dados em outro. Use funções de conversão para converter números em cadeias de caracteres ou cadeias de caracteres em números. Funções de conversão podem ser utilizadas com dados de cadeias de caracteres ou numéricos.

BinToInt

BinToInt(s) : converte uma cadeia de caracteres binária (s) em um número inteiro. É limitado a 64 bits de precisão e pode ter até 64 bits de tamanho.

Exemplo

  • BinToInt("101010101")  retorna 341. Se a cadeia tiver exatamente 32 ou 64 caracteres, ela será tratada como um número com sinal:

  • BinToInt("11111111111111111111111111111011")  retorna -5. Os sinais à esquerda "+" e "-" têm precedência sobre o tratamento de 32 e 64 caracteres como um número com sinal:

  • BinToInt("-111")  retorna -7.

  • BinToInt("+111")  retorna 7.

CharFromInt

CharFromInt(x) : retorna o caractere Unicode® que corresponde ao número fornecido em x.

Exemplo

  • CharFromInt(66)  retorna B (U+0042 "letra maiúscula latina B").

  • CharFromInt(169)  retorna © (U+00A9 "símbolo de copyright").

  • CharFromInt(1071)  retorna Я (U+042F "letra maiúscula cirílica YA").

  • CharFromInt(127944)  retorna 🏈 (U+1F3C8 "bola de futebol americano").

  • CharFromInt(0)  retorna [Null] (U+000 "nulo") porque qualquer número inteiro que não pode ser usado para representar um caractere gera um resultado nulo.

  • CharFromInt(55300)  retorna [Null] porque qualquer número inteiro que atualmente não representa um caractere não pode ser renderizado por uma fonte normal.

CharToInt

CharToInt(s) : retorna o número que corresponde ao caractere Unicode® fornecido em s.

Exemplo

  • CharToInt("B")  retorna 66 (U+0042 "letra maiúscula latina B").

  • CharToInt("©")  retorna 169 (U+00A9 "símbolo de copyright").

  • CharToInt("Я")  retorna 1071 (U+042F "letra maiúscula cirílica YA").

  • CharToInt()  retorna 127944 (U+1F3C8 "bola de futebol americano").

ConvertFromCodePage

ConvertFromCodePage(s, codePage) : traduz o texto de uma página de código para Unicode. Para saber mais sobre páginas de código, acesse a documentação sobre Páginas de código .

ConvertToCodePage

ConvertToCodePage(s, codePage) : traduz um texto de codificação Unicode® para uma página de código específica. Para saber mais sobre páginas de código, visite a documentação sobre Páginas de código .

HexToNumber

HexToNumber(x): converte uma cadeia de caracteres hexadecimal em um número (limitado a 64 bits). Se houver 64 bits, 16 caracteres hexadecimais e o bit à esquerda estiver definido, o resultado será negativo.

Exemplo

  • HexToNumber("7FFFFFFFFFFFFFFA")  retorna 9223372036854775802.

  • HexToNumber("FFFFFFFFFFFFFFFA")  retorna -6.

  • HexToNumber("FFFFFFFFFFFFFFFB")  retorna -5.

IntToBin

IntToBin(x) : converte x em uma cadeia de caracteres binária.

IntToHex

IntToHex(x) : converte x em uma cadeia de caracteres hexadecimal.

ToDegrees

ToDegrees(x) : converte um valor numérico (x) radiano para graus através do cálculo (x)rad × 180/π. Observe que x deve ser um valor numérico e não pode incluir o símbolo de radiano (rad).

Exemplo

  • TODEGREES(0)  retorna 0.

  • TODEGREES(1)  retorna 57.29578 (1 * 180/π).

  • TODEGREES(Null)  Retorna [Null] (nulo).

  • TODEGREES(2.5)  retorna 143.239449 (2.5 * 180/π).

ToNumber

ToNumber(x, [bIgnoreErrors], [keepNulls], [decimalSeparator]) : converte uma cadeia de caracteres (x) em um número. A função ToNumber aceita cadeias de caracteres que podem ser interpretadas como notação científica de precisão dupla. Por padrão, o ponto é usado como separador decimal. Antes (não depois) do separador decimal (se houver), todos os separadores de milhares plausíveis são removidos: espaço, vírgula, ponto e apóstrofo. Você pode escrever "123 456’789.012345".

ToNumber pode retornar um valor inteiro com 64 bits de precisão se a cadeia de caracteres de entrada estiver representada como um número inteiro e estiver no intervalo.

Valores não numéricos

A função ToNumber avalia a cadeia de caracteres desde o início e para quando encontra um valor não numérico (com exceção de vírgulas, pontos, espaços e apóstrofos).

Por exemplo, a cadeia de caracteres "June 2022" retorna 0 ou [Null] (dependendo da configuração), enquanto "2022 June" retorna 2022.

Parâmetros opcionais

  • bIgnoreErrors

    • (Padrão) 0 ou "false" gera mensagens de erro de conversão.

    • 1 ou "true" ignora erros de conversão.

  • keepNulls

    • (Padrão) 0 ou "false" converte valores não numéricos (incluindo nulos) em zero.

    • 1 ou "true" converte valores não numéricos em nulo.

  • decimalSeparator : é o separador decimal da cadeia de caracteres de entrada.

    • (Padrão) "." especifica um ponto como separador decimal.

    • "," especifica a vírgula como separador decimal.

    O parâmetro decimalSeparator ignora qualquer que seja o separador de milhar (espaço, ponto, vírgula ou apóstrofo) da cadeia de caracteres de entrada.

Exemplo

  • ToNumber("878")  retorna a cadeia de caracteres 878 como um número.

  • ToNumber("4.256411411E9")  retorna o número 4256411411.0.

  • ToNumber("9223372036854775807")  retorna 9223372036854775807. No entanto,  ToNumber("9.223372036854774273e18")  retorna um double, que perderá precisão e será arredondado para 9223372036854775808.

  • ToNumber("Number", "false")  retorna 0 com o erro de conversão: "TONUMBER: o número perdeu informações na conversão".

  • ToNumber("Number", 0, 0)  retorna 0 com o erro de conversão: "TONUMBER: o número perdeu informações na conversão".

  • ToNumber("Number", 1, 0)  retorna 0 sem reportar erros de conversão.

  • ToNumber("Number", 1, 1)  retorna [Null] sem reportar erros de conversão.

  • ToNumber("123456,789", 1, 1, ",")  retorna 123456.789 como um número.

  • ToNumber("123.456,789", 1, 1, ",")  retorna 123456.789 como um número. Isso ocorre porque o ponto é automaticamente interpretado como o separador de milhar quando vem antes do separador decimal especificado por meio do parâmetro decimalSeparator .

  • ToNumber("June 2022")  retorna 0. A função encontra um valor não numérico logo no início e o converte em 0.

  • ToNumber("2022 June")  retorna 2022 como um número. A função para quando encontra um valor não numérico, o J em "June".

  • ToNumber("6/1/2022")  retorna 6 como um número. A função para quando encontra um valor não numérico, o /.

  • ToNumber("2022 5:00:00")  retorna 20225 como um número. A função para quando encontra um valor não numérico, o : após o número 5. Espaços antes de um separador decimal são ignorados.

ToRadians

ToRadians(x) : converte um valor de grau numérico (x) em radianos através do cálculo (x)° × π/180. Observe que x deve ser um valor numérico e não pode incluir o símbolo de grau (°).

Exemplo

  • TORADIANS(0)  retorna 0 (0 * π/180).

  • TORADIANS(1)  retorna 0.017453 (1 * π/180).

  • TORADIANS(5)  retorna 0.087266 (5 * π/180).

  • TORADIANS(2.5)  retorna 0.043633 (2.5 * π/180).

ToString

ToString(x, [numDec], [addThousandsSeparator], [decimalSeparator]) : converte um parâmetro numérico (x) em uma cadeia de caracteres usando as casas decimais especificadas em numDec *. A seleção padrão usa um ponto como o separador decimal. A função ToString trata os valores Int64 de maneira diferente, de modo a não perder precisão na conversão. ToString(value, 0, 1) com value=18014398509481983 resulta precisamente em 18,014,398,509,481,983.

*O valor máximo para o parâmetro numDec  é 100.

Parâmetros opcionais

  • addThousandsSeparator

    • (Padrão) 0  formata a cadeia de caracteres numérica sem um separador de milhar.

    • 1 a formata com um separador de milhar. Por padrão, o separador de milhar é uma vírgula, a menos que "," seja especificado como decimalSeparator , caso em que o separador de milhar é um ponto.

    • "," especifica a vírgula como separador de milhar.

    • "." especifica o ponto como separador de milhar.

    • " " especifica um espaço como o separador de milhar.

    • "'" especifica o apóstrofo como separador de milhar.

  • decimalSeparator

    • (Padrão) "." especifica o ponto como separador decimal.

    • "," especifica a vírgula como separador decimal.

Exemplo

  • ToString(10, 0)  retorna 10 como uma cadeia de caracteres.

  • ToString(10.4, 2)  retorna 10.40 como uma cadeia de caracteres.

  • ToString(100.4, 2)  retorna 100.40 como uma cadeia de caracteres.

  • ToString(1000.4, 2, 1)  retorna 1,000.40 como uma cadeia de caracteres.

  • ToString(123456.789, 3, 1, ",")  retorna 123.456,789 como uma cadeia de caracteres.

  • ToString(123456.789, 3, 0, ",")  retorna 123456,789 como uma cadeia de caracteres.

  • ToString(1234567.89, 2, ".", ",")  retorna 1.234.567,89 como uma cadeia de caracteres.

  • ToString(1234567.89, 2, " ", ",")  retorna 1 234 567,89 como uma cadeia de caracteres.

  • ToString(1234567.89, 2, "'", ",")  retorna 1'234'567,89 como uma cadeia de caracteres.