Стойността на Pi е 3,14, гравитационното привличане на Земята е 9,8 m/s2, имате интерес към VBA и т.н. Всичко това са константи и те не се променят.
Във VBA можете да дефинирате променливи, чиято стойност не може да бъде променена в програмата. Програмистът на VBA сам дефинира тези постоянни стойности в програмата, за да ги използва отново и отново.
Как да определим постоянна стойност във VBA?
Използваме ключовата дума Състда декларира константа във VBA.
Синтаксисът на деклариране на постоянна променлива във VBA е:
[] Съст като =
[]: Спецификаторът на обхвата не е задължителен. Вие посочвате обхвата на константата (публичен или частен), ако искате, в противен случай не го декларирайте. По подразбиране обхватът на константата е частен. Можете да прочетете за спецификаторите на обхвата тук.
Забележка: Никога не използваме ключовата дума Dim, за да декларираме константа във VBA.
: Това е името на константната променлива.
: Типът на константата. Например Integer, String, Date и т.н.
: Стойността на постоянната променлива.
Прост пример за константната променлива е:
Съст пи като двойно = 3,14
Тук декларирахме постоянната стойност на pi в променлива с имепи. Сега можем да използваме това пив нашата програма. Стойността винаги ще бъде 3.14. Ако се опитате да промените стойността на константна променлива, Excel VBA ще се появи съобщение за грешка.
Примери за постоянна променлива VBA
Проучете кода по -долу:
Const pi As Double = 3.14 Const rad As Double = 6371 Sub Earth () sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub Sub Mars () rad = 3389.5 sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub
Тук дефинирахме две константи, pi и rad. Стойността на pi е 3,14, а rad е 6371, което е радиусът на Земята.
Сега, когато стартираме първата под Земя, тя работи перфектно и отпечатва повърхността на Земята.
В следващия подмарс ние предефинирахме константата rad, тъй като радиусът на марс е различен. Когато стартираме тази програма, тя издава грешка, казвайки: "Присвояването на константа не е разрешено".
Как да инициализираме константа във VBA
Както видяхте в горния пример, че не можем да присвоим нови стойности на константа. Да, не можеш.
Но ако все пак трябва да използвате същото име като различна фиксирана стойност, просто използвайте Състключова дума преди заданието.
Кодът по -долу ще работи перфектно.
Const pi As Double = 3.14 Const rad As Double = 6371 Sub Earth () sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub Sub Mars () Const rad = 3389.5 sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub
Горната подпрограма ще работи перфектно без никакви грешки. Но не препоръчвам този подход. Най -добрият начин е да идентифицирате публичните и частните константи и да ги дефинирате отделно. И това ни води до следващия ни сегмент.
Публични и частни константи във VBA
Както научихме в горните примери, някои константи може да са универсални, а някои може да се различават за различните обекти. Подобно, стойността pi е постоянна за цялата вселена, но броят на планетите много от слънчевата система до слънчевата система и радиусът на планетите варира от планета до планета.
Тъй като радиусът на Земята е постоянен за нея, а не за Вселената. По същия начин в програмите ще има някои константи, които ще бъдат частни за под -модулите и модулите, а някои ще бъдат публични константи за целия проект на VBA. Вашата работа е да ги идентифицирате и декларирате по различен начин.
Нека вземем друг пример:
Public Const pi As Double = 3.14 'Това може да бъде достъпно от всеки модул в проекта Private Const planets As Integer = 8' това е частно за този модул Sub Earth () Const rad As Double = 6371 'Частно за тази подпрограма. Не може да бъде достъпен извън sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub Sub Mars () Const rad As Double = 3389.5 'Частно за тази подпрограма. Не може да бъде достъпен извън sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub
Това е просто задаване на променлив обхват. Можете да прочетете подробно за настройката на променливия обхват тук.
Така че да, момчета, ето как декларирате и използвате константи в Excel VBA. Опитах се да обясня по творчески начин. Надявам се да съм бил достатъчно обяснителен. Ако имате някакви съмнения, попитайте в секцията за коментари по -долу. Ще се радвам да ви чуя и да ви отговоря.
Променлив обхват на Excel VBA | имаме променливи спецификатори за достъп, които определят от къде може да се получи достъп до определена променлива. Excel VBA не е изключение. VBA също има спецификатори на обхвата. Тези спецификатори на обхвата могат да се използват за задаване на видимост/обхват на променлива в Excel VBA.
Аргументи ByRef и ByVal | Когато аргумент се предава като аргумент ByRef на различна под -функция или функция, се изпраща препратката към действителната променлива. Всички промени, направени в копието на променливата, ще бъдат отразени в първоначалния аргумент.
Изтриване на листове без подкани за потвърждение с помощта на VBA в Microsoft Excel | Тъй като изтривате листове с помощта на VBA, знаете какво правите. Бихте искали да кажете на Excel да не показва това предупреждение и да изтрие проклетия лист.
Добавяне и запазване на нова работна книга с помощта на VBA в Microsoft Excel 2016 | В този код първо създадохме препратка към обект на работна книга. И тогава го инициализирахме с нов обект на работна книга. Ползата от този подход е, че можете лесно да извършвате операции с тази нова работна книга. Като запазване, затваряне, изтриване и т.н.
Показване на съобщение в лентата на състоянието на Excel VBA Лентата на състоянието в Excel може да се използва като монитор на кодове. Когато вашият VBA код е дълъг и изпълнявате няколко задачи с помощта на VBA, често деактивирате актуализацията на екрана, така че да не виждате този екран да трепти
Изключете предупредителните съобщения с помощта на VBA в Microsoft Excel 2016 | Този код не само деактивира сигналите за VBA, но също така увеличава ефективността на кода във времето. Да видим как.
Популярни статии:
50 преки пътища в Excel за повишаване на вашата производителност | Бъдете по -бързи в задачата си. Тези 50 преки пътища ще ви накарат да работите още по -бързо в Excel.
Функцията VLOOKUP в Excel | Това е една от най -използваните и популярни функции на excel, която се използва за търсене на стойност от различни диапазони и листове.
COUNTIF в Excel 2016 | Пребройте стойностите с условия, използвайки тази невероятна функция. Не е необходимо да филтрирате данните си, за да преброите конкретна стойност. Функцията Countif е от съществено значение за подготовката на вашето табло.
Как да използвате функцията SUMIF в Excel | Това е друга основна функция на таблото. Това ви помага да обобщите стойностите при конкретни условия.