VBA Int / Integer andmetüüp (Dim Variable)

Muutuja tüüp täisarv (Int)

VBA Int andmetüüpi kasutatakse täisarvude salvestamiseks (ilma kümnendväärtusteta). Kuid nagu allpool näeme, peavad täisarvu väärtused jääma vahemikku -32768 kuni 32768.

Int muutuja deklareerimiseks kasutage Dim Statement (lühend Dimension):

1 Dim intA täisarvuna

Seejärel kasutage muutujale väärtuse määramiseks lihtsalt võrdusmärki:

1 intA = 30000

Selle protseduuri lisamine näeb välja selline:

12345678 Alam -näide ()'deklareerige täisarvDim intA täisarvuna'täitke täisarvintA = 30000'näidake sõnumikastMsgBox intAEnd Sub

Kui käivitate ülaltoodud koodi, kuvatakse järgmine sõnumikast.

Pika muutuja tüüp

Nagu eespool mainitud, saavad Int -muutujad salvestada väärtusi ainult vahemikus –32768 kuni 32768. Kui proovite Int -muutujale määrata väärtuse, mis jääb sellest vahemikust välja, kuvatakse tõrketeade:

Kui klõpsate nupul De-bug, klõpsab kood 'Täitke täisarv täisarv ei saa talletada kuni 50000 numbrit.

Selle asemel saate muutuja deklareerida nupuga Pikk andmetüüp:

1 Hämarda kauaA kui pikk

Pikad muutujad võivad salvestada väga pikki andmetüüpe (-2 147 483 648 kuni 2 147 483 648).

<>

Miks peaksite pikkade muutujate asemel kasutama Int -muutujaid?

Pikad muutujad kasutavad rohkem mälu. Aastaid tagasi oli mälu koodi kirjutamisel suur probleem, kuid nüüd on arvutitehnoloogia palju täiustatud ja on kaheldav, kas VBA -koodi kirjutamisel ilmnevad mäluprobleemid, mida põhjustavad pikad muutujad.

Int muutujate asemel soovitame alati kasutada pikki muutujaid. Jätkame seda õpetust Int muutujate arutamise kohta, kuid pidage meeles, et saate selle asemel kasutada muutuja tüüpi Long.

Kümnendväärtused ja sisetüübid

Int muutujad ei saa kümnendväärtusi salvestada. Kui edastate kümnendkoha täisarvu, ümardatakse kümnendarv kümnendkoha eemaldamiseks.

Seega, kui peaksite järgima järgmist protseduuri:

12345678 AlamvahemikB ()'deklareerige täisarvDim intA täisarvuna'täitke täisarvintA = 3524,12'näidake sõnumikastMsgBox intAEnd Sub

Saate järgmise tulemuse (allapoole ümardamine):

Kuid see kood allpool:

12345678 AlamvahemikB ()'deklareerige täisarvDim intA täisarvuna'täitke täisarvintA = 3524,52'näidake sõnumikastMsgBox intAEnd Sub

Tagastab järgmise sõnumikasti (ümardamine):

Kümnend / kahekordne andmetüüp

Kui soovite salvestada kümnendkoha, peate deklareerima muutuja, mis võimaldab komakohti. Kasutada saab 3 andmetüüpi - ühe-, kahe- või valuuta.

1 Dim sngHind üksikuna
1 Dim dblHind kahekordselt
1 Hämardage valuuta valuutat

Üksik andmetüüp ümardab kümnendkoha veidi teisiti kui topelt- ja valuuta andmetüüp, seega on täpsuse huvides eelistatav kasutada kahekordset ühele. Kahekordsel võib olla kuni 12 kohta pärast koma, samas kui valuutal ja üksikul võib olla kuni neli kohta pärast koma.

Nende andmetüüpide kohta lisateabe saamiseks vaadake siin.

Deklareerige muutuja moodulis või globaalsel tasandil

Eelmistes näidetes oleme protseduuri käigus deklareerinud muutuja Int. Protseduuriga deklareeritud muutujaid saab kasutada ainult selle protseduuri raames.

Selle asemel saate deklareerida Int 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 täisarvuline muutuja on saadaval kasutamiseks kogu teie VBA projektis.

1 Avalik IntA täisarvuna

Kui deklareerite täisarvu mooduli tasemel ja proovite seda kasutada mõnes teises moodulis, ilmneb tõrge.

Kui aga oleksite täisarvu deklareerimiseks kasutanud märksõna Avalik, ei ilmneks viga ja protseduur toimiks ideaalselt.

Teisenda string int

Võib esineda juhtumeid või juhtumeid, kui peate stringina salvestatud arvu teisendama täisarvuliseks väärtuseks.

Vahetus aknas märkate, et täisarvu väärtus läheb paremale, näidates numbrit, samas kui stringi väärtus läheb vasakule - see näitab teksti.

Teisenda int stringiks

Ja vastupidi, saate täisarvu väärtuse teisendada stringiks.

Nende andmetüüpide kohta lisateabe saamiseks vaadake siin.

Vorming täisarv salvestatakse stringina

<>

Te aitate arengu ala, jagades leht oma sõpradega

wave wave wave wave wave