Text Documents (Writer)
HTML Documents (Writer Web)
Spreadsheets (Calc)
Presentations (Impress)
Drawings (Draw)
Database Functionality (Base)
Formulae (Math)
Charts and Diagrams
Macros and Scripting
Office Installation
Common Help Topics
OneOffice Logo

CInt Function

Converts any string or numeric expression to an integer.

Syntax:


CInt (Expression As Variant) As Integer

Return value:

Integer

Parameters:

Expression: Any string or numeric expression that you want to convert. To convert a string expression, the number must be entered using a dot "." as the decimal point and a comma "," as the thousands separator (for instance 123,456.78), which may differ from your Office language settings.

If the argument is string, the function trims the leading white space; then it tries to recognise a number in following characters. The syntax below are recognised:

  • Decimal numbers (with optional leading sign) using decimal and group separators of locale configured in Office (group separators are accepted in any position), with optional exponential notation like "-12e+1" (where an optionally signed whole decimal number after e or E or d or D defines power of 10);
  • Octal numbers like "&Onnn...", where "nnn..." after "&O" or "&o" is sequence no longer than 11 digits, from 0 to 7, up to the next non-alphanumeric character;
  • Hexadecimal numbers like "&Hnnn...", where "nnn..." after "&H" or "&h" is sequence of characters up to the next non-alphanumeric character, and must be no longer than 8 digits, from 0 to 9, A to F, or a to f.

The rest of the string is ignored. If the string is not recognised, e.g. when after trimming leading whitespace it doesn't start with plus, minus, a decimal digit, or "&", or when the sequence after "&O" is longer than 11 characters or contains an alphabetic character, the numeric value of expression is 0.

If the argument is an error, the error number is used as numeric value of the expression.

If the argument is a date, number of days since 1899-12-30 (serial date) is used as numeric value of the expression. Time is represented as fraction of a day.

After calculating the numeric value of the expression, it is rounded to the nearest integer (if needed), and if the result is not between -32768 and 32767, Office Basic reports an overflow error. Otherwise, the result is returned.

Error codes:

5 Invalid procedure call

Example:

Numeric expressions are displayed according Office language settings:


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