Цяло число е тип данни в VBA, който се дава на всяка променлива, за да съдържа целочислени стойности, ограниченията или скобата за броя на целочислената променлива, която може да съдържа, е подобна във VBA на тази на другите езици, всяка променлива се дефинира като цяло число променлива, използваща DIM израз или ключова дума във VBA.
Excel VBA Integer
Типовете данни са толкова важни във всеки език за кодиране, защото цялата декларация на променливите трябва да бъде последвана от типа данни, присвоен на тези променливи. Имаме няколко типа данни, с които работим и всеки тип данни има своите предимства и недостатъци, свързани с него. Когато декларираме променливи, е важно да знаем подробности за конкретния тип данни. Това е статията, посветена на типа данни „Integer“ във VBA. Ще ви покажем пълната картина на типа данни „Integer“.
Какво представлява целочисленият тип данни?
Целите числа са цели числа, които могат да бъдат положителни, отрицателни и нула, но не и дробно число. В контекста на VBA „Integer“ е тип данни, който присвояваме на променливите. Това е числов тип данни, който може да съдържа цели числа без десетични позиции. Целочислени данни от тип 2 байта за съхранение, което е половината от типа данни VBA LONG, т.е. 4 байта.

Примери за цялостен тип данни на Excel VBA
По-долу са дадени примерите за типа VBA Integer Data.
Пример # 1
Когато декларираме променлива, е необходимо да й присвоим тип данни и цяло число един от тях, който обикновено се използва от всички потребители въз основа на изискванията.
Както казах, едно цяло число може да съдържа само цели числа, а не дробни числа. Следвайте стъпките по-долу, за да видите примера на VBA цяло число тип данни.
Стъпка 1: Декларирайте променливата като Integer.
Код:
Sub Integer_Example () Dim k As Integer End Sub

Стъпка 2: Присвойте стойността 500 на променливата „k.“
Код:
Sub Integer_Example1 () Dim k As Integer k = 500 End Sub

Стъпка 3: Покажете стойността в полето за съобщения на VBA.
Код:
Sub Integer_Example1 () Dim k As Integer k = 500 MsgBox k End Sub

Когато стартираме кода с помощта на клавиша F5 или ръчно, тогава можем да видим 500 в полето за съобщение.

Пример # 2
Сега ще присвоя стойността като -500 на променливата „k.“
Код:
Sub Integer_Example2 () Dim k As Integer k = -500 MsgBox k End Sub

Стартирайте този код ръчно или натиснете F5. След това ще покаже и стойността -500 в полето за съобщения.

Пример # 3
Както казах на VBA, типът данни Integer може да съдържа само цели числа, но не и числа от дроби като 25.655 или 47.145.
Ще се опитам обаче да присвоя номера на фракцията на тип данни на VBA Integer. Например погледнете кода по-долу.
Код:
Sub Integer_Example3 () Dim k As Integer k = 85.456 MsgBox k End Sub

Присвоих 85.456 на променливата „k.“ Ще пусна този VBA код, за да видя какъв е резултатът.

- Върна резултата като 85, въпреки че съм присвоил стойността на номера на фракцията. Това е така, защото VBA закръглява числата на дроби до най-близкото цяло число.
- Всички фракционни числа, които са по-малки от 0,5, ще бъдат закръглени надолу до най-близкото цяло число. За пример 2.456 = 2, 45.475 = 45.
- Всички фракционни числа, които са по-големи от 0,5, ще бъдат закръглени до най-близкото цяло число. За пример 10,56 = 11, 14,789 = 15.
За да погледнем поредно цяло закръглено число, стойността на „k“ е 85,58.
Код:
Sub Integer_Example3 () Dim k As Integer k = 85.58 MsgBox k End Sub

Когато стартирам този код с помощта на клавиша F5 или ръчно, той ще върне 86, защото всичко повече от 0,5 ще бъде закръглено до следващото цяло число.

Ограничения на целочисления тип данни в Excel VBA
Грешка при препълване: Целочисленият тип данни трябва да работи добре, стига зададената стойност да е между -32768 до 32767. В момента, в който премине границата от двете страни, това ще ви причини грешка.
Например погледнете кода по-долу.
Код:
Sub Integer_Example4 () Dim k As Integer k = 40000 MsgBox k End Sub

Присвоих стойността 40000 на променливата „k.“
Тъй като имам пълни познания за Integer Data Type със сигурност, знам, че не работи, тъй като целочисленият тип данни не може да съдържа стойността на нещо повече от 32767.
Нека пуснем кода ръчно или чрез клавиша F5 и да видим какво ще се случи.

Опа !!!
Получих грешката като „Преливане“, тъй като типът данни Integer не може да съдържа нищо повече от 32767 за положителни числа и -32768 за отрицателни числа.
Грешка при несъответствие на типа: Целочислените данни могат да съдържат само числови стойности между -32768 до 32767. Да предположим, че всяко число, присвоено повече от тези числа, ще покаже грешка при препълване.
Сега ще се опитам да му присвоя текстови или низови стойности. В примерния код по-долу съм присвоил стойността като „Здравейте“.
Код:
Sub Integer_Example4 () Dim k As Integer k = "Hello" MsgBox k End Sub

Ще пусна този код чрез опцията за изпълнение или ръчно и ще видя какво ще стане.

Показва грешката като „Несъответствие на типа“, тъй като не можем да присвоим текстова стойност на променливата „цял тип данни“.