Pi väärtus on 3,14, Maa gravitatsioonitõmme on 9,8 m/s2, olete huvitatud VBA -st jne. Need kõik on konstandid ja need ei muutu.
VBA -s saate määratleda muutujad, mille väärtust ei saa programmis muuta. VBA programmeerija määratleb need püsiväärtused programmis ise, et neid ikka ja jälle kasutada.
Kuidas määratleda püsiväärtus VBA -s?
Me kasutame märksõna Constdeklareerida VBA -s konstant.
VBA konstantse muutuja deklareerimise süntaks on järgmine:
[] Const nagu =
[]: Ulatuse täpsustaja on valikuline. Soovi korral määrate konstanti ulatuse (avalik või privaatne), vastasel juhul ärge seda deklareerige. Vaikimisi on konstandi ulatus privaatne. Reguleerimisala täpsustajate kohta saate lugeda siit.
Märkus. Me ei kasuta kunagi VBA -s konstandi deklareerimiseks märksõna Dim.
: See on konstantse muutuja nimi.
: Konstanti tüüp. Näiteks täisarv, string, kuupäev jne.
: Pideva muutuja väärtus.
Lihtne näide konstantsest muutujast on järgmine:
Const pi kahekordne = 3,14
Siin deklareerisime konstantse pi väärtuse muutuja nimegapi. Nüüd saame seda kasutada pimeie programmis. Väärtus on alati 3,14. Kui proovite muuta konstantse muutuja väärtust, kuvab Exceli VBA veateate.
VBA pidevate muutujate näited
Uurige allolevat koodi:
Const pi As Double = 3,14 Const rad As Double = 6371 Alammaa () sArea = 4 * pi * Sqr (rad) Silumine. Prindi sArea End Sub Sub Mars () rad = 3389,5 sArea = 4 * pi * Sqr (rad) Silumine. Prindi sArea End Sub
Siin oleme määratlenud kaks konstanti, pi ja rad. Pi väärtus on 3,14 ja rad on 6371, mis on Maa raadius.
Nüüd, kui käivitame Maa esimese alamosa, töötab see suurepäraselt ja prindib Maa pindala.
Järgmisel alam-Marsil määratlesime konstantse rad uuesti, kuna Marsi raadius on erinev. Kui käivitame selle programmi, kuvatakse tõrge, öeldes: "Püsivale määramine pole lubatud".
Kuidas lähtestada konstant VBA -s
Nagu ülaltoodud näites nägite, ei saa me konstandile uusi väärtusi määrata. Jah, sa ei saa.
Aga kui teil on siiski vaja sama nime kasutada erineva fikseeritud väärtusena, kasutage lihtsalt Constmärksõna enne ülesannet.
Allpool olev kood töötab ideaalselt.
Const pi As Double = 3,14 Const rad As Double = 6371 Sub Earth () sArea = 4 * pi * Sqr (rad) Silumine. Prindi sArea End Sub Sub Mars () Const rad = 3389,5 sArea = 4 * pi * Sqr (rad) Silumine. Prindi sArea End Sub
Ülaltoodud alamprogramm töötab suurepäraselt ilma vigadeta. Kuid ma ei soovita seda lähenemist. Parim viis on tuvastada avalikud ja privaatsed konstandid ning määratleda need eraldi. Ja see viib meid järgmisele segmendile.
Avalikud ja privaatsed konstandid VBA -s
Nagu ülaltoodud näidetest õppisime, võivad mõned konstandid olla universaalsed ja mõned võivad erinevate objektide puhul erineda. Nagu näiteks, on pi väärtus kogu universumi jaoks konstantne, kuid planeetide arv, mis on väga päikesesüsteemist päikesesüsteemini ja planeetide raadius, on planeediti erinev.
Kuna Maa raadius on tema jaoks konstantne, mitte universumi jaoks. Samamoodi on programmides mõned konstandid alam- ja moodulite jaoks privaatsed ning mõned on kogu VBA projekti jaoks avalikud. Teie ülesanne on need tuvastada ja erinevalt deklareerida.
Võtame teise näite:
Avalik Const pi As Double = 3.14 'Sellele pääseb juurde mis tahes moodulist projektis Private Const planeedid As Integer = 8' see on selle mooduli privaatne Sub Earth () Const rad As Double = 6371 'Privaatne sellele alamprogrammile. Ei pääse juurde väljaspool sArea = 4 * pi * Sqr (rad) Silumine. Prindi sArea End Sub Mars () Const rad As Double = 3389,5 'Selle alamprogrammi privaatne. Ei pääse juurde väljaspool sArea = 4 * pi * Sqr (rad) silumine. Prindi sArea End Sub
See on lihtne muutuva ulatuse määramine. Siin saate üksikasjalikult lugeda muutuva ulatuse sätte kohta.
Nii et jah, poisid, nii deklareerite ja kasutate konstante Excel VBA -s. Püüdsin loominguliselt seletada. Loodan, et olin piisavalt selgitav. Kui teil on kahtlusi, küsige allpool kommentaaride jaotises. Mul on hea meel teid kuulda ja vastata.
Exceli VBA muutuv ulatus | meil on muutuva juurdepääsu spetsifikatsioonid, mis määravad, kust saab juurde pääseda määratletud muutujale. Excel VBA pole erand. Ka VBA -l on ulatuse täpsustajad. Neid ulatuse spetsifikatsioone saab kasutada muutuja nähtavuse/ulatuse määramiseks Excel VBA -s.
ByRef ja ByVal argumendid | Kui argument edastatakse ByRef argumendina teisele alam- või funktsioonile, saadetakse tegeliku muutuja viide. Kõik muutuja koopiasse tehtud muudatused kajastuvad algses argumendis.
Lehtede kustutamine ilma kinnitusteta Microsoft Excelis VBA abil | Kuna kustutate lehti VBA abil, teate, mida teete. Sooviksite Excelil seda hoiatust mitte kuvada ja neetud leht kustutada.
Uue töövihiku lisamine ja salvestamine Microsoft Excel 2016 VBA abil | Selles koodis lõime esmalt viite töövihiku objektile. Ja siis vormistasime selle uue töövihikuobjektiga. Selle lähenemisviisi eeliseks on see, et saate selle uue töövihikuga hõlpsalt toiminguid teha. Nagu salvestamine, sulgemine, kustutamine jne
Sõnumi kuvamine Exceli VBA olekuribal Exceli olekuriba saab kasutada koodimonitorina. Kui teie VBA -kood on pikk ja teete VBA -ga mitut ülesannet, keelate sageli ekraani värskendamise, nii et te ei näe ekraani vilkumist
Hoiatusteadete väljalülitamine Microsoft Excel 2016 VBA abil | See kood mitte ainult ei luba VBA hoiatusi, vaid suurendab ka koodi ajakasutust. Vaatame, kuidas.
Populaarsed artiklid:
50 Exceli otseteed tootlikkuse suurendamiseks | Saa oma ülesandega kiiremini hakkama. Need 50 otseteed aitavad teil Excelis veelgi kiiremini töötada.
Funktsioon VLOOKUP Excelis | See on üks enim kasutatud ja populaarsemaid Exceli funktsioone, mida kasutatakse erinevate vahemike ja lehtede väärtuse otsimiseks.
COUNTIF Excelis 2016 | Loendage väärtused tingimustega, kasutades seda hämmastavat funktsiooni. Te ei pea konkreetse väärtuse loendamiseks oma andmeid filtreerima. Countif funktsioon on armatuurlaua ettevalmistamisel hädavajalik.
Funktsiooni SUMIF kasutamine Excelis | See on veel üks armatuurlaua oluline funktsioon. See aitab teil teatud tingimustel väärtusi kokku võtta.