Funzioni di conversione
Una funzione di conversione converte un tipo di dati o formato in un altro tipo di dati o formato. Utilizza la funzione di conversione per convertire i numeri in stringhe o le stringhe in numeri. Le funzioni di conversione possono essere utilizzate con i tipi di dati Stringa e Numero.
BinToInt
BinToInt(s)
: converte la stringa binaria s in un numero intero. È limitato a 64 bit di precisione e può avere una lunghezza massima di 64 bit.
Esempio
BinToInt("101010101")
restituisce 341. Se la stringa è lunga esattamente 32 o 64 caratteri, verrà considerata come un numero con segno:BinToInt("11111111111111111111111111111011")
restituisce -5. I segni iniziali "+" e "-" hanno la precedenza sul fatto di considerare 32 e 64 caratteri come un numero con segno:BinToInt("-111")
restituisce -7.BinToInt("+111")
restituisce 7.
CharFromInt
CharFromInt(x)
: restituisce il carattere Unicode® corrispondente al numero di input x.
Esempio
CharFromInt(66)
restituisce B (U+0042 "lettera maiuscola latina B").CharFromInt(169)
restituisce © (U+00A9 "simbolo di copyright").CharFromInt(1071)
restituisce Я (U+042F "lettera maiuscola cirillica YA").CharFromInt(127944)
restituisce 🏈 (U+1F3C8 "palla da football americano").CharFromInt(0)
restituisce [null] (U+000 "Null') perché qualsiasi numero intero che non può essere utilizzato per rappresentare un carattere può restituire un risultato nullo.CharFromInt(55300)
restituisce [null] perché qualsiasi numero intero che attualmente non rappresenta un carattere non verrà rappresentato da un carattere normale.
CharToInt
CharToInt(s)
: restituisce il numero corrispondente al carattere Unicode® di input s.
Esempio
CharToInt("B")
restituisce 66 (U+0042 "lettera maiuscola latina B").CharToInt("©")
restituisce 169 (U+00A9 "simbolo di copyright").CharToInt("Я")
restituisce 1071 (U+042F "lettera maiuscola cirillica YA").CharToInt()
restituisce 127944 (U+1F3C8 "palla da football americano").
ConvertFromCodePage
ConvertFromCodePage(s, codePage)
: traduce il testo da una tabella codici in Unicode. Per ulteriori informazioni sulle tabelle codici, consulta la documentazione
Tabelle codici
.
ConvertToCodePage
ConvertToCodePage(s, codePage)
: traduce il testo con codifica Unicode® in una tabella codici specifica. Per ulteriori informazioni sulle tabelle codici, consulta la documentazione
Tabelle codici
.
HexToNumber
HexToNumber(x): converte una stringa HEX in un numero (limite di 64 bit). Se sono presenti 64 bit, 16 caratteri esadecimali e il bit principale è impostato, il risultato è negativo.
Esempio
HexToNumber("7FFFFFFFFFFFFFFA")
restituisce 9223372036854775802.HexToNumber("FFFFFFFFFFFFFFFA")
restituisce -6.HexToNumber("FFFFFFFFFFFFFFFB")
restituisce -5.
IntToBin
IntToBin(x)
: converte x in una stringa binaria.
IntToHex
IntToHex(x)
: converte x in una stringa esadecimale.
ToDegrees
ToDegrees(x)
: converte un valore radiante numerico (x) in gradi tramite il calcolo (x)rad x 180/π. Tieni presente che x deve essere un valore numerico e non può includere alcun simbolo di radiante (rad).
Esempio
TODEGREES(0)
restituisce 0.TODEGREES(1)
restituisce 57.29578 (1 * 180/π).TODEGREES(Null)
restituisce null.TODEGREES(2.5)
returns 143.239449 (2.5 * 180/π).
ToNumber
ToNumber(x, [bIgnoreErrors], [keepNulls], [decimalSeparator])
: converte una stringa (x) in un numero. ToNumber accetta stringhe che possono essere interpretate come doppia precisione di notazione scientifica. Per impostazione predefinita, il punto viene utilizzato come separatore decimale. Prima (non dopo) del separatore decimale (se presente), vengono rimossi tutti i separatori delle migliaia plausibili: spazio, virgola, punto e apostrofo. È possibile scrivere "123 456’789.012345".
ToNumber può restituire un valore intero con 64 bit di precisione se la stringa di input è simile a un numero intero ed è compresa nell'intervallo.
Valori non numerici
ToNumber valuta la stringa dall'inizio e si arresta quando incontra un valore non numerico (ignorando virgole, punti, spazi e apostrofi).
Ad esempio, la stringa "Giugno 2022" restituisce 0 o [Null] (a seconda della configurazione), mentre "2022 Giugno" restituisce 2022.
Parametri facoltativi
bIgnoreErrors
(Impostazione predefinita) 0 o false riporta messaggi di errore di conversione.
1 o true ignora gli errori di conversione.
keepNulls
(Impostazione predefinita) 0 o false converte i valori non numerici (compreso null) in zero.
1 o true converte i valori non numerici in null.
decimalSeparator
: il separatore decimale della stringa in entrata.(Impostazione predefinita) "." specifica un punto come separatore decimale.
"," specifica una virgola come separatore decimale.
Il parametro
decimalSeparator
ignora qualsiasi separatore delle migliaia designato (spazio, punto, virgola o apostrofo) della stringa in entrata.
Esempio
ToNumber("878")
restituisce la stringa 878 come numero.ToNumber("4.256411411E9")
resituisce il numero 4256411411.0.ToNumber("9223372036854775807")
restituisce 9223372036854775807. Tuttavia,ToNumber("9.223372036854774273e18")
restituisce un doppio, che perderà la precisione e verrà arrotondato a 9223372036854775808.ToNumber("Number", "false")
restituisce 0 con errore di conversione: TONUMBER: il numero ha perso informazioni nella conversione.ToNumber("Number", 0, 0)
restituisce 0 con errore di conversione: TONUMBER: il numero ha perso informazioni nella conversione.ToNumber("Number", 1, 0)
restituisce 0 senza errori di conversione.ToNumber("Number", 1, 1)
restituisce [null] e nessun errore di conversione.ToNumber("123456,789", 1, 1, ",")
restituisce 123456.789 come numero.ToNumber("123.456,789", 1, 1, ",")
restituisce 123456.789 come numero. Ciò si verifica perché il punto viene interpretato come separatore delle migliaia se precede il separatore decimale specificato tramitedecimalSeparator
.ToNumber("June 2022")
restituisce 0. La funzione rileva immediatamente un valore non numerico e lo converte in 0.ToNumber("2022 June")
restituisce 2022 come numero. Si arresta quando incontra un valore non numerico, la G in giugno.ToNumber("6/1/2022")
restituisce 6 come numero. Si arresta quando incontra un valore non numerico, /.ToNumber("2022 5:00:00")
restituisce 20225 come numero. Si arresta quando incontra un valore non numerico, : dopo 5. Gli spazi prima di un separatore decimale vengono ignorati.
ToRadians
ToRadians(x)
converte un valore numerico in gradi (x) in radianti tramite il calcolo (x) x π/180. Tieni presente che x deve essere un valore numerico e non può includere il simbolo del grado (°).
Esempio
TORADIANS(0)
restituisce 0 (0 * π/180).TORADIANS(1)
restituisce 0.017453 (1 * π/180).TORADIANS(5)
restituisce 0.087266 (5 * π/180).TORADIANS(2.5)
restituisce 0.043633 (2.5 * π/180).
ToString
ToString(x, [numDec], [addThousandsSeparator], [decimalSeparator])
: converte un parametro numerico (x) in una stringa utilizzando posizioni decimali
numDec
*. La selezione predefinita utilizza un punto come separatore decimale. ToString considera i valori Int64 in maniera diversa, in modo da non perdere precisione nella conversione. ToString(value, 0, 1) con valore=18014398509481983 fornisce esattamente 18,014,398,509,481,983.
*Il valore massimo per il parametro
numDec
è 100.
Parametri facoltativi
addThousandsSeparator
(impostazione predefinita)
0
formatta la stringa numerica senza separatore delle migliaia.1
formatta con separatore delle migliaia. Per impostazione predefinita, il separatore delle migliaia è una virgola, a meno che non sia specificato "," perdecimalSeparator
, nel qual caso il separatore delle migliaia è un punto."," specifica una virgola come separatore delle migliaia.
"." specifica un punto come separatore delle migliaia.
" " specifica uno spazio come separatore delle migliaia.
"'" specifica un apostrofo come separatore delle migliaia.
decimalSeparator
(Impostazione predefinita) "." specifica il punto come separatore decimale.
"," specifica la virgola come separatore decimale.
Esempio
ToString(10, 0)
restituisce 10 come stringa.ToString(10.4, 2)
restituisce 10.40 come stringa.ToString(100.4, 2)
restituisce 100.40 come stringa.ToString(1000.4, 2, 1)
restituisce 1,000.40 come stringa.ToString(123456.789, 3, 1, ",")
restituisce 123.456,789 come stringa.ToString(123456.789, 3, 0, ",")
restituisce 123456,789 come stringa.ToString(1234567.89, 2, ".", ",")
restituisce 1.234.567,89 come stringa.ToString(1234567.89, 2, " ", ",")
restituisce 1 234 567,89 come stringa.ToString(1234567.89, 2, "'", ",")
restituisce 1'234'567,89 come stringa.