Cum să declarați constantele VBA în Excel

Cuprins:

Anonim

Valoarea lui Pi este de 3,14, atracția gravitațională a Pământului este de 9,8 m / s2, sunteți interesat de VBA, etc. Toate acestea sunt constante și nu se schimbă.

În VBA puteți defini variabile a căror valoare nu poate fi modificată în program. Programatorul VBA definește aceste valori constante de unul singur în program pentru a le utiliza din nou și din nou.

Cum se definește o valoare constantă în VBA?

Folosim cuvântul cheie Constsă declare o constantă în VBA.

Sintaxa declarării unei variabile constante în VBA este:

[] Const ca = 

[]: Specificatorul domeniului este opțional. Specificați domeniul de aplicare al constantei (publice sau private) dacă doriți, altfel nu o declarați. În mod implicit, domeniul de aplicare al unei constante este privat. Puteți citi despre specificațiile domeniului de aplicare aici.

Notă: nu folosim niciodată cuvântul cheie Dim pentru a declara o constantă în VBA.

: Este numele variabilei constante.

: Tipul constantei. De exemplu, întreg, șir, dată etc.

: Valoarea variabilei constante.

Un exemplu simplu al variabilei constante este:

Const pi ca dublu = 3,14

Aici am declarat valoarea constantă a pi într-o variabilă numităpi. Acum putem folosi acest lucru piîn programul nostru. Valoarea va fi întotdeauna 3,14. Dacă încercați să modificați valoarea unei variabile constante, Excel VBA va afișa un mesaj de eroare.

Exemple de variabile constante VBA

Studiați codul de mai jos:

Const pi Ca Dublu = 3,14 Const rad Ca Dublu = 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 

Aici, am definit două constante, pi și rad. Valoarea lui pi este 3,14 și rad este 6371, care este raza pământului.

Acum, când rulăm primul sub Pământ, acesta funcționează perfect și imprimă suprafața Pământului.

În următorul sub-Marte, am redefinit radul constant, deoarece raza lui Marte este diferită. Când rulăm acest program, acesta generează o eroare spunând „Alocarea la constantă nu este permisă".

Cum se reinițializează o constantă în VBA

După cum ați văzut în exemplul de mai sus, nu putem atribui valori noi unei constante. Da, nu poți.

Dar dacă totuși trebuie să folosiți același nume ca o valoare fixă ​​diferită, utilizați doar Constcuvânt cheie înainte de atribuire.

Codul de mai jos va funcționa perfect.

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 

Subrutina de mai sus va funcționa perfect fără erori. Dar nu recomand această abordare. Cel mai bun mod este de a identifica constantele publice și private și de a le defini separat. Și acest lucru ne aduce la următorul nostru segment.

Constante publice și private în VBA

După cum am aflat în exemplele de mai sus, unele constante pot fi universale și unele pot diferi pentru diferite obiecte. La fel, valoarea pi este constantă pentru întregul univers, dar numărul de planete foarte solar din sistem solar și raza planetelor variază de la planetă la planetă.

Deoarece raza Pământului este constantă pentru aceasta, nu pentru univers. În mod similar, în programe, vor exista unele constante care vor fi private pentru sub și module și unele vor fi constante publice pentru întregul proiect VBA. Sarcina ta este să le identifici și să le declari diferit.

Să luăm un alt exemplu:

Public Const pi As Double = 3.14 'Acest lucru poate fi accesat din orice modul din proiect Planete Private Const As Integer = 8' este privat pentru acest modul Sub Earth () Const rad As Double = 6371 'Private pentru acest subrutină. Nu poate fi accesat în afara sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub Sub Mars () Const rad As Double = 3389.5 'Privat la acest subrutină. Nu poate fi accesat în afara sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub 

Acesta este un domeniu variabil simplu care specifică. Puteți citi despre setarea domeniului variabil aici aici în detaliu.

Deci, băieți, așa declarați și utilizați constante în Excel VBA. Am încercat să explic într-un mod creativ. Sper că am fost suficient de explicativ. Dacă aveți vreo îndoială, întrebați în secțiunea de comentarii de mai jos. Voi fi bucuros să vă aud și să vă răspund.

Domeniul de aplicare variabil VBA Excel | avem specificatori de acces variabil care definesc de unde poate fi accesată o variabilă definită. Excel VBA nu este o excepție. Și VBA are specificatori de domeniu. Acești specificatori de domeniu pot fi utilizați pentru a seta vizibilitatea / sfera unei variabile în Excel VBA.

Argumente ByRef și ByVal | Atunci când un argument este transmis ca argument ByRef către o altă funcție sau sub, se trimite referința variabilei reale. Orice modificare adusă copiei variabilei se va reflecta în argumentul original.

Ștergeți foile fără solicitări de confirmare folosind VBA în Microsoft Excel | Deoarece ștergeți foile folosind VBA, știți ce faceți. Ați dori să spuneți Excel să nu afișeze acest avertisment și să șteargă afurisita de foaie.

Adăugați și salvați un registru de lucru nou folosind VBA în Microsoft Excel 2016 | În acest cod, am creat mai întâi o referință la un obiect de registru de lucru. Și apoi l-am inițializat cu un nou obiect de registru de lucru. Avantajul acestei abordări este că puteți face operațiuni cu ușurință pe acest nou registru de lucru. Cum ar fi salvarea, închiderea, ștergerea etc.

Afișați un mesaj pe bara de stare Excel VBA Bara de stare în excel poate fi utilizată ca monitor de cod. Când codul dvs. VBA este lung și faceți mai multe sarcini folosind VBA, dezactivați adesea actualizarea ecranului, astfel încât să nu vedeți ecranul care pâlpâie

Dezactivați mesajele de avertizare folosind VBA în Microsoft Excel 2016 | Acest cod nu numai că dezactivează alertele VBA, ci și crește eficiența timpului codului. Să vedem cum.

Articole populare:

50 de comenzi rapide Excel pentru a vă crește productivitatea | Deveniți mai rapid la sarcina dvs. Aceste 50 de comenzi rapide vă vor face să lucrați și mai rapid pe Excel.

Funcția VLOOKUP în Excel | Aceasta este una dintre cele mai utilizate și populare funcții ale Excel, care este utilizată pentru a căuta valoarea din diferite intervale și foi.

COUNTIF în Excel 2016 | Numărați valorile cu condiții folosind această funcție uimitoare. Nu trebuie să vă filtrați datele pentru a număra o anumită valoare. Funcția Countif este esențială pentru a vă pregăti tabloul de bord.

Cum se utilizează funcția SUMIF în Excel | Aceasta este o altă funcție esențială a tabloului de bord. Acest lucru vă ajută să rezumați valori în condiții specifice.