Ühe muutuja tüüp
VBA Vallaline andmetüüpi kasutatakse kümnendkohti nõudvate numbrite salvestamiseks. See võib salvestada negatiivsete väärtuste jaoks vahemikus -3.4028235E+38 kuni -1.401298E -45 ja positiivsete väärtuste korral vahemikus 1.401298E -45 kuni 3.4028235E+38.
Üksiku muutuja deklareerimiseks kasutage Dim Statement (Dimensioni lühend):
1 | Dim sngA Single |
Seejärel kasutage muutujale väärtuse määramiseks lihtsalt võrdusmärki:
1 | sngA = 3658,25 |
Selle protseduuri lisamine näeb välja selline:
12345678 | Sub sngExample ()'deklareerige kahekordne muutujaDim sngA Single'täitke kahekordne muutujasngA = 3658,25'näidake sõnumikastMsgBox sngAEnd Sub |
Kui käivitate ülaltoodud koodi, kuvatakse järgmine sõnumikast.
Kahekordne andmetüüp
Kahekordne andmetüüp on lihtsalt selle pikem versioon Vallaline andmetüüp. Seetõttu võib see ümardamist mõjutada, kui seda kasutatakse protseduuris Vallaline andmetüüp ümardatakse nelja kümnendkohani, samas kui Kahekordne andmetüüp ümardatakse 12 kümnendkohani. Kui vajate rohkem kui 4 kohta pärast koma, võite kasutada andmetüüpi Topelt.
Int või pikad andmetüübid
Kui te ei vaja kümnendkohta, võite kasutada andmetüüpi Int või Long.
1 | Dim intA täisarvuna |
1 | Dim lngB kui pikk |
VBA programmeerimine | Koodigeneraator töötab teie jaoks!
Deklareerige üks muutuja moodulil või globaalsel tasandil
Eelmistes näidetes oleme deklareerinud Vallaline muutuja protseduuri piires. Protseduuriga deklareeritud muutujaid saab kasutada ainult selle protseduuri raames.
Selle asemel saate deklareerida üksikuid muutujaid mooduli või globaalsel tasandil.
Mooduli tase
Mooduli tase muutujad deklareeritakse koodimoodulite ülaosas koos Dim avaldus.
Neid muutujaid saab selle koodimooduli mis tahes protseduuriga kasutada.
Globaalne tase
Globaalne tase muutujad deklareeritakse ka koodimoodulite ülaosas. Selle asemel, et kasutada Dim avaldust, kasutage Avalik avaldus, mis näitab, et Vallaline muutuja on saadaval kasutamiseks kogu teie VBA projekti jooksul.
1 | Avalik SngA vallalisena |
Kui peaksite kuulutama ,. Vallaline muutuja mooduli tasemel ja seejärel proovige seda kasutada mõnes teises moodulis, ilmneb tõrge.
Kui aga oleksite deklareerimiseks kasutanud märksõna Avalik Vallaline muutuja, viga ei esine ja protseduur toimiks ideaalselt.
Kas olete väsinud VBA koodinäidete otsimisest? Proovige AutoMacrot!
Vorming üksik salvestatakse stringina
Võib juhtuda, et soovite vormindada ühe andmetüübi stringiks - näiteks võite kuvada valuutasümboli ja ümardada selle numbri kahe kümnendkohani.
Selle saavutamiseks kasutate funktsiooni Vorming.
Järgmine protseduur
1234567891011 | Sub TestSingleToCurrencyString ()'deklareerige string muutujaDim strMoney kui string'kuulutage vallaline ja lisage väärtusDim sngValue SinglesngValue = 44055.256'teisendage singel valuutasümboliga stringiks kahe kümnendkoha täpsusegastrMoney = Vorming (sngValue, "$#, ## 0.00")'vaata tulemustMsgBox strMoneyEnd Sub |
tagastaks sellise tulemuse:
Samuti võite soovida numbrit vormindatud telefoninumbrina kuvada.
See protseduur:
1234567891011 | Sub TestSingleToPhone ()'deklareerige string muutujaHämarda telefon stringina'kuulutage vallaline ja lisage väärtusDim sglValue ÜksikunasglValue = 555968541'teisendada singel valuutasümboliga stringiksstrPhone = Vorming (sglValue, "(000) -000 0000")'vaata tulemustMsgBox strPhoneEnd Sub |
tagastaks sellise tulemuse: