Funzione CInt

Converte una stringa o un'espressione numerica in un valore intero.

Sintassi:


CInt (Expression As Variant) As Integer

Valore restituito:

Integer

Parametri:

Expression: ogni stringa o espressione numerica che si desidera convertire. Per convertire un'espressione di tipo stringa, il numero dev'essere inserito usando il punto "." come separatore decimale e la virgola "," come separatore delle migliaia (ad esempio 123,456.78), ciò può differire dalle impostazioni della lingua di LibreOffice.

Se l'argomento è una stringa la funzione rimuove gli spazi iniziali, quindi prova a riconoscere un numero nei caratteri successivi. Le seguenti sintassi vengono riconosciute:

Il resto della stringa viene ignorato. Se la stringa non viene riconosciuta, ad esempio quando dopo la rimozione degli spazi iniziali non comincia con un segno più, meno, una cifra decimale o con "&", o se la sequenza dopo "&O" è più lunga di 11 caratteri o contiene un carattere alfabetico, il valore numerico dell'espressione è 0.

Se l'argomento è un errore, il numero dell'errore è usato come valore numerico dell'espressione.

Se l'argomento è una data, il numero di giorni dal 30/12/1899 (data seriale) è usato come valore numerico dell'espressione. L'orario è rappresentato come frazione di giorno.

Dopo aver calcolato il valore numerico dell'espressione, questo è arrotondato all'intero più vicino (se necessario) e se il risultato non è compreso tra -32768 e 32767, LibreOffice Basic evidenzia un errore di overflow. Altrimenti, restituisce il risultato.

Codici di errore:

5 Richiamo di procedura non valido

Esempio:

Le espressioni numeriche vengono visualizzate in base alle impostazioni della lingua di LibreOffice:


Sub ExampleCountryConvert
    MsgBox CDbl(1234,5678) ' 1234,5678
    MsgBox CInt(1234.5678) ' 1235
    MsgBox CLng(1234+5678) ' 6912
    MsgBox CSng(1234,5678) ' 1234,567749023

    MsgBox CDbl(expression := 5678,1234) ' 5678,1234
    MsgBox CInt(expression := 5678.1234) ' 5678
    MsgBox CLng(expression := 5678+1234) ' 6912
    MsgBox CSng(expression := 5678,1234) ' 5678,123535156
End Sub