Целочислено (Int) Тип променлива
VBA Int тип данни се използва за съхраняване на цели числа (без десетични стойности). Както обаче ще видим по -долу, целочислените стойности трябва да попадат в диапазона от ‑32768 до 32768.
За да декларирате променлива Int, използвате Dim Statement (съкращение от Dimension):
1 | Dim intA като Integer |
След това, за да присвоите стойност на променлива, просто използвайте знака за равенство:
1 | intA = 30000 |
Поставянето на това в процедура изглежда така:
12345678 | Sub IntExample ()'декларирайте цяло числоDim intA като Integer'попълнете цялото числоintA = 30000'покажете полето за съобщенияMsgBox intAEnd Sub |
Ако изпълните горния код, ще се покаже следното поле със съобщение.
Дълъг променлив тип
Както бе споменато по -горе, променливите Int могат да съхраняват само стойности между ‑32768 до 32768. Ако се опитате да присвоите стойност извън този диапазон на променлива Int, ще получите грешка:
Когато щракнете върху отстраняване на грешки, кодът ще се счупи в ‘Попълнете целочислената линия като цяло число не може да съхранява число до 50000.
Вместо това можете да декларирате променлива с Дълго тип данни:
1 | Dim longA като Long |
Дългите променливи могат да съхраняват много дълги типове данни (-2,147,483,648 до 2,147,483,648).
<>
Защо бихте използвали Int променливи вместо Long променливи?
Дългите променливи използват повече памет. Преди години паметта беше голяма грижа при писането на код, но сега изчислителната технология е много подобрена и е съмнително, че ще срещнете проблеми с паметта, причинени от дълги променливи, когато пишете VBA код.
Препоръчваме винаги да използвате дълги променливи вместо променливи Int. Ще продължим този урок, обсъждайки Int променливи, но имайте предвид, че вместо това можете да използвате типа променлива Long.
Десетични стойности и вътрешни типове данни
Int променливите не могат да съхраняват десетични стойности. Ако предадете десетично число на цяло число, десетичното число ще бъде закръглено, за да премахне десетичния знак.
Следователно, ако трябва да изпълните процедурата по -долу:
12345678 | Sub IntExampleB ()'декларирайте цяло числоDim intA като Integer'попълнете цялото числоintA = 3524,12'покажете полето за съобщенияMsgBox intAEnd Sub |
Ще получите следния резултат (закръгляване надолу):
Този код по -долу обаче:
12345678 | Sub IntExampleB ()'декларирайте цяло числоDim intA като Integer'попълнете цялото числоintA = 3524,52'покажете полето за съобщенияMsgBox intAEnd Sub |
Ще върне следното поле за съобщение (закръгляване нагоре):
Десетичен / двоен тип данни
Ако искате да съхранявате десетичен знак, ще трябва да декларирате променлива, която позволява десетични знаци. Има 3 типа данни, които можете да използвате - единични, двойни или валутни.
1 | Dim sngЦена като единична |
1 | Dim dblЦена като Double |
1 | Dim curЦена като валута |
Единичният тип данни ще закръгля десетичната запетая малко по -различно от двойния и валутния тип данни, така че е за предпочитане да се използва двойно до единично за точност. Двойникът може да има до 12 десетични знака, докато валутата и единичният могат да имат до 4 знака след десетичната запетая.
За допълнителна информация относно тези типове данни можете да разгледате тук.
Обявете Int променлива на модулно или глобално ниво
В предишните примери декларирахме променливата Int в рамките на процедура. Променливите, декларирани с процедура, могат да се използват само в рамките на тази процедура.
Вместо това можете да декларирате Int променливи на модулно или глобално ниво.
Модулно ниво
Ниво на модул променливите се декларират в горната част на кодовите модули с Дим изявление.
Тези променливи могат да се използват с всяка процедура в този кодов модул.
Глобално ниво
Глобално ниво променливите също се декларират в горната част на кодовите модули. Въпреки това, вместо да използвате Дим изявление, използвайте Обществен израз, който показва, че целочислената променлива е достъпна за използване във вашия VBA проект.
1 | Публична IntA като цяло число |
Ако трябва да декларирате цяло число на ниво модул и след това да се опитате да го използвате в друг модул, ще възникне грешка.
Ако обаче сте използвали ключовата дума Public за деклариране на цяло число, грешката няма да възникне и процедурата ще работи перфектно.
Конвертиране на низ в Int
Възможно е да има екземпляр или случаи, когато ще трябва да преобразувате число, съхранено като низ, в цяло число.
Ще забележите в непосредствения прозорец, че целочислената стойност отива надясно, указвайки число, докато стойността на низа отива вляво - показващ текст.
Конвертирайте Int в String
Обратно, можете да преобразувате цяло число в низ.
За допълнителна информация относно тези типове данни можете да разгледате тук.
Форматиране на цяло число, съхранявано като низ
<>