Skip to main content

Funciones de conversión

Una función de conversión convierte un tipo o formato de datos en otro tipo o formato de datos. Usa una función de conversión para convertir números en cadenas o cadenas en números. Las funciones de conversión se pueden utilizar con tipos de datos numéricos y de cadena.

BinToInt

BinToInt(s) : convierte la cadena binaria (s) en un entero. Se limita a 64 bits de precisión y puede tener hasta 64 bits de longitud.

Ejemplo

  • BinToInt("101010101")  devuelve 341. Si la cadena tiene exactamente 32 o 64 caracteres, se tratará como un número con signo:

  • BinToInt("11111111111111111111111111111011")  devuelve -5. Los signos iniciales “+” y “-” tienen prioridad sobre el tratamiento de 32 y 64 caracteres como un número con signo:

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

  • BinToInt("+111")  devuelve 7.

CharFromInt

CharFromInt(x) : devuelve el carácter Unicode® que coincida con el número x ingresado.

Ejemplo

  • CharFromInt(66)  devuelve B (U+0042 “letra latina mayúscula B”).

  • CharFromInt(169)  devuelve © (U+00A9 “símbolo de derechos de autor”).

  • CharFromInt(1071)  devuelve Я (U+042F “letra cirílica mayúscula YA”).

  • CharFromInt(127944)  devuelve 🏈 (U+1F3C8 “fútbol americano”).

  • CharFromInt(0)  devuelve [null] (U+000 “Null”) porque cualquier número entero que no se pueda utilizar para representar un carácter puede dar un resultado nulo.

  • CharFromInt(55300)  devuelve [null] porque cualquier número entero que no represente un carácter no será representado por una fuente normal.

CharToInt

CharToInt(s) : devuelve el número que coincida con el carácter Unicode® s ingresado.

Ejemplo

  • CharToInt("B")  devuelve 66 (U+0042 “letra latina mayúscula B”).

  • CharToInt("©")  devuelve 169 (U+00A9 “símbolo de derechos de autor”).

  • CharToInt("Я")  devuelve 1071 (U+042F “letra cirílica mayúscula YA”).

  • CharToInt()  devuelve 127944 (U+1F3C8 “pelota de fútbol americano”).

ConvertFromCodePage

ConvertFromCodePage(s, codePage) : traduce texto de una página de código a Unicode. Para obtener más información sobre las páginas de código, visita la documentación de páginas de código .

ConvertToCodePage

ConvertToCodePage(s, codePage) : traduce texto de codificación Unicode® a una página de código específica. Para obtener más información sobre las páginas de códigos, visita la documentación de páginas de código .

HexToNumber

HexToNumber(x): convierte una cadena hexadecimal en un número (se limita a 53 bits). Si hay 64 bits, 16 caracteres hexadecimales y se establece el bit principal, el resultado es negativo.

Ejemplo

  • HexToNumber("7FFFFFFFFFFFFFFA")  devuelve 9223372036854775802.

  • HexToNumber("FFFFFFFFFFFFFFFA")  devuelve -6.

  • HexToNumber("FFFFFFFFFFFFFFFB")  devuelve -5.

IntToBin

IntToBin(x) : convierte x en una cadena binaria.

IntToHex

IntToHex(x) : convierte x en una cadena hexadecimal.

ToDegrees

ToDegrees(x) : convierte un valor numérico radián (x) en grados mediante el cálculo (x)rad × 180/π. Ten en cuenta que x debe ser un valor numérico y no puede incluir ningún símbolo de radián (rad).

Ejemplo

  • TODEGREES(0)  devuelve 0.

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

  • TODEGREES(Null)  devuelve Null.

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

ToNumber

ToNumber(x, [bIgnoreErrors], [keepNulls], [decimalSeparator]) : convierte una cadena (x) en un número. ToNumber admite cadenas que se pueden interpretar como notación científica de doble precisión. De forma predeterminada, el punto se utiliza como separador decimal. Antes (no después) del separador decimal (si lo hay), se quitan todos los separadores de miles plausibles: espacio, coma, punto y apóstrofo. Puedes escribir "123 456’789.012345".

ToNumber puede devolver un valor entero con 64 bits de precisión si la cadena de entrada se parece a un entero y está dentro del rango.

Valores no numéricos

ToNumber evalúa la cadena desde el principio y se detiene cuando encuentra un valor no numérico (omite comas, puntos, espacios y apóstrofos).

Por ejemplo, la cadena “June 2022” devuelve 0 o [Null] (dependiendo de la configuración), mientras que “2022 June” devuelve 2022.

Parámetros opcionales

  • bIgnoreErrors

    • (predeterminado) 0 o falso informa mensajes de error de conversión.

    • 1 o verdadero ignora los errores de conversión.

  • keepNulls

    • (predeterminado) 0 o falso convierte los valores no numéricos (incluso nulos) a cero.

    • 1 o verdadero convierte los valores no numéricos a nulo.

  • decimalSeparator : el separador decimal de la cadena entrante.

    • (predeterminado) “.” especifica un punto como separador decimal.

    • "," especifica una coma como separador decimal.

    El parámetro decimalSeparator ignora el separador de miles designado (espacio, punto, coma o apóstrofo) de la cadena entrante.

Ejemplo

  • ToNumber("878")  devuelve la cadena 878 como un número.

  • ToNumber("4.256411411E9")  devuelve el número 4256411411.0.

  • ToNumber("9223372036854775807")  devuelve 9223372036854775807. Sin embargo, ToNumber("9.223372036854774273e18") devuelve un doble, que perderá precisión y se redondeará hasta 9223372036854775808.

  • ToNumber("Number", "false")  devuelve 0 con error de conversión: TONUMBER: número perdió información en la conversión.

  • ToNumber("Number", 0, 0)  devuelve 0 con error de conversión: TONUMBER: número perdió información en la conversión.

  • ToNumber("Number", 1, 0)  devuelve 0 sin error de conversión.

  • ToNumber("Number", 1, 1)  devuelve [Null] sin error de conversión.

  • ToNumber("123456,789", 1, 1, ",")  devuelve 123456.789 como un número.

  • ToNumber("123.456,789", 1, 1, ",")  devuelve 123456.789 como un número. Esto se debe a que el punto se interpreta como separador de miles cuando va antes del separador decimal especificado mediante decimalSeparator .

  • ToNumber("June 2022")  devuelve 0. La función encuentra de inmediato un valor no numérico y lo convierte en 0.

  • ToNumber("2022 June")  devuelve 2022 como un número. Se detiene cuando encuentra un valor no numérico, la J en "June".

  • ToNumber("6/1/2022")  devuelve 6 como un número. Se detiene cuando encuentra un valor no numérico, la /.

  • ToNumber("2022 5:00:00")  devuelve 20225 como un número. Se detiene cuando encuentra un valor no numérico, los : después de 5. Se ignoran los espacios antes de un separador decimal.

ToRadians

ToRadians(x) : convierte un valor numérico de grado (x) en radianes mediante el cálculo (x)° × π/180. Ten en cuenta que x debe ser un valor numérico y no puede incluir el símbolo de grado (°).

Ejemplo

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

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

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

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

ToString

ToString(x, [numDec], [addThousandsSeparator], [decimalSeparator]) : convierte un parámetro numérico (x) en una cadena usando el número de decimales en numDec . La selección predeterminada utiliza un punto como separador decimal. ToString trata Int64 valores de manera diferente, para no perder precisión en la conversión. ToString(value, 0, 1) con valor=18014398509481983 da precisamente 18,014,398,509,481,983.

*El valor máximo para el parámetro numDec es 100.

Parámetros opcionales

  • addThousandsSeparator

    • (predeterminado) 0 formatea la cadena numérica sin un separador de miles.

    • 1 formatea con un separador de miles. De forma predeterminada, el separador de miles es una coma, a menos que “,” se especifique para decimalSeparator en cuyo caso el separador de miles es un punto.

    • "," especifica una coma como separador de miles.

    • "." especifica un punto como separador de miles.

    • " " especifica un espacio como separador de miles.

    • "'" especifica un apóstrofo como separador de miles.

  • decimalSeparator:

    • (predeterminado) “.” especifica el punto como separador decimal.

    • "," especifica la coma como separador decimal.

Ejemplo

  • ToString(10, 0)  devuelve 10 como una cadena.

  • ToString(10.4, 2)  devuelve 10.40 como una cadena.

  • ToString(100.4, 2)  devuelve 100.40 como una cadena.

  • ToString(1000.4, 2, 1)  devuelve 1,000.40 como una cadena.

  • ToString(123456.789, 3, 1, ",")  devuelve 123.456,789 como una cadena.

  • ToString(123456.789, 3, 0, ",")  devuelve 123456,789 como una cadena.

  • ToString(1234567.89, 2, ".", ",")  devuelve 1.234.567,89 como una cadena.

  • ToString(1234567.89, 2, " ", ",")  devuelve 1 234 567,89 como una cadena.

  • ToString(1234567.89, 2, "'", ",")  devuelve 1'234'567,89 como una cadena.