Excel VBA String до Integer
String и Integer са често срещани типове данни, но често като част от нашия анализ на данни, може да поискаме да преобразуваме променливата от типа data string в цяло число тип данни и това е възможно с помощта на функцията “CINT” във VBA.

Синтаксис на функцията CINT
“CINT” е категоризиран като функция за преобразуване на тип данни. Тази функция преобразува предоставения израз в Integer тип данни. Когато казвам „Expression“, това трябва да е числова стойност, която е в диапазона на Integer тип данни във VBA, т.е. между -32768 до 32767.
Сега вижте синтаксиса на функцията CINT във VBA.

- Изразът е стойността или променливата, която съдържа стойността, която трябва да се преобразува в Integer Data Type.
В тази статия ще ви покажем за преобразуването на целочисления тип данни от низ в цяло число с помощта на функцията „CINT“.
Примери за CINT функция във VBA
Пример # 1
Нека да изпълним първия пример за преобразуване на число на дроб в целочислен тип данни.
Код:
Sub CINT_Example1 () Dim IntegerNumber As String Dim IntegerResult As Integer IntegerNumber = 2564.589 IntegerResult = CInt (IntegerNumber) MsgBox IntegerResult End Sub
- В горния код за променливата “IntegerNumber” съм присвоил стойността като “2564.589”.
- В следващия ред съм приложил функция CINT. Така той ще преобразува предоставената стойност до най-близкото цяло число.

И така, получихме резултата - 2565, а предоставеното число е 2564.589. Когато десетичната стойност е повече от 0,5, функциите CINT закръглят числото до следващото цяло число. Когато десетичната стойност е по-малка или равна на 0,5 CINT функции, закръглени надолу до същото цяло число.
За пример погледнете кода по-долу, където броят е по-малък от 0,5
Код:
Sub CINT_Example1 () Dim IntegerNumber As String Dim IntegerResult As Integer IntegerNumber = 2564 - 0.5 IntegerResult = CInt (IntegerNumber) MsgBox IntegerResult End Sub
Това трябва да даде резултата като 2564, а не 2565.

Пример # 2
Сега ще се опитам да присвоя номера, който е повече от лимита на типа данни Integer.
Код:
Sub CINT_Example2 () Dim IntegerNumber As String Dim IntegerResult As Integer IntegerNumber = 51456.785 IntegerResult = CInt (IntegerNumber) MsgBox IntegerResult End Sub
Задал съм числото като „IntegerNumber = 51456.785“, което е повече от ограничението на ограничението за тип данни Integer. Сега, ако се опитам да стартирам кода, той ще изведе грешка при препълване във VBA.

Винаги, когато предоставеният номер е повече от целочисления тип данни, позволява да се покаже простото поле за съобщение с надпис „Числото е повече от ограничението на целочисления тип данни“.
Код:
Под CINT_Example2 () Dim IntegerNumber As String Dim IntegerResult As Integer IntegerNumber = 51456.785 On Error GoTo Message: IntegerResult = CInt (IntegerNumber) Message: If Err.Number = 6 Тогава MsgBox IntegerNumber & "е повече от числото на числото" Крайна под
Това ще показва съобщението, както е показано по-долу, когато предоставеният номер е извън обхвата на типа данни Integer.

Пример # 3
Сега ще се опитам да присвоя стойността, която не е цифрова.
Под CINT_Example2 () Dim IntegerNumber As String Dim IntegerResult As Integer IntegerNumber = "Hello" IntegerResult = CInt (IntegerNumber) MsgBox IntegerResult End Sub
Задал съм стойността като „Здравей“, която не е цифрова. Това причинява „Грешка при несъответствие на типа“.

Вместо да показваме грешката по този начин, нека поставим просто поле с информационно съобщение пред потребителя. Кодът по-долу ще постави съобщението с надпис „Предоставената стойност на израза е нецифрова, така че не може да бъде преобразувана“.
Код:
Sub CINT_Example2 () Dim IntegerNumber As String Dim IntegerResult As Integer IntegerNumber = "Hello" On Error GoTo Message: IntegerResult = CInt (IntegerNumber) Съобщение: If Err.Number = 13 Тогава MsgBox IntegerNumber & ": The Provided NumbersNumeber , Така че не може да се преобразува "End Sub
Това ще покаже полето за съобщения по-долу.

Неща за запомняне
- CINT преобразува стойност от друг тип данни в цяло число тип данни.
- Цялото число може да съдържа стойности от -32768 до 32767, всичко над тези числа ще доведе до грешка при препълване.
- Само типът низови данни съдържа числови данни, които ще бъдат преобразувани в цял тип данни.
Препоръчани статии
Това е ръководство за VBA String to Integer. Тук обсъждаме примери за низ към цяло число в Excel VBA, като използваме функцията CINT, заедно с практически примери и изтегляем Excel шаблон. По-долу има няколко полезни статии, свързани с VBA -
- VBA разделен низ в масив
- VBA низ до дата
- VBA Сравнение на низове
- VBA замести низ