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 mediantedecimalSeparator
.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 paradecimalSeparator
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.