VBA Int / Integer adattípus (Dim változó)

Egész (Int) változó típusa

A VBA Int az adattípust egész számok tárolására használják (tizedes értékek nélkül). Az alábbiakban azonban látni fogjuk, hogy az egész számoknak a -32768 és 32768 közötti tartományba kell esniük.

Int változó deklarálásához használja a Dim Statement (a Dimension rövidítése) kifejezést:

1 Dim intA mint egész

Ezután, ha értéket szeretne rendelni egy változóhoz, egyszerűen használja az egyenlőségjelet:

1 intA = 30000

Ennek az eljárásba történő beillesztése így néz ki:

12345678 Sub -IntExample ()'deklarálja az egész számotDim intA mint egész'töltse ki az egész számotintA = 30000'mutasd az üzenetdoboztMsgBox intAEnd Sub

Ha futtatja a fenti kódot, a következő üzenetmező jelenik meg.

Hosszú változó típus

Amint fentebb említettük, az Int változók csak a –32768 és 32768 közötti értékeket tárolhatnak. Ha ezen a tartományon kívüli értéket próbál hozzárendelni egy Int változóhoz, akkor hibaüzenetet kap:

Ha rákattint a hibakeresésre, a kód megszakad a 'Töltse ki az egész sort mivel egész szám nem tud 50000 -as számot tárolni.

Ehelyett deklarálhat egy változót a Hosszú adattípus:

1 Dim longA as Long

A hosszú változók nagyon hosszú adattípusokat tudnak tárolni (-2 147 483 648 és 2 147 483 648 között).

<>

Miért használna Int változókat a hosszú változók helyett?

A hosszú változók több memóriát igényelnek. Évekkel ezelőtt a memória nagy gondot okozott a kódírás során, azonban most a számítástechnika sokat fejlődött, és kétséges, hogy a VBA -kód írása során memóriaproblémákkal fog találkozni, amelyeket hosszú változók okoznak.

Javasoljuk, hogy mindig hosszú változókat használjon az Int változók helyett. Folytatjuk ezt az oktatóanyagot, amely az Int változókat tárgyalja, de ne feledje, hogy helyette használhatja a Long változó típust.

Tizedes értékek és belső adattípusok

Az Int változók nem tudnak tizedes értékeket tárolni. Ha egy tizedes számot egész számmal ad át, akkor a tizedes számot kerekítve távolítja el a tizedest.

Ezért ha az alábbi eljárást hajtaná végre:

12345678 Belső PéldaB ()'deklarálja az egész számotDim intA mint egész'töltse ki az egész számotintA = 3524,12'mutasd az üzenetdoboztMsgBox intAEnd Sub

A következő eredményt kapja (lefelé kerekítve):

Ez az alábbi kód azonban:

12345678 Belső PéldaB ()'deklarálja az egész számotDim intA mint egész'töltse ki az egész számotintA = 3524,52'mutasd az üzenetdoboztMsgBox intAEnd Sub

A következő üzenetmezőt adja vissza (felfelé kerekítve):

Tizedes / kettős adattípus

Ha tizedesjegyet szeretne tárolni, akkor deklarálnia kell egy változót, amely lehetővé teszi a tizedesjegyeket. Három adattípust használhat - Egyszeres, Dupla vagy Pénznem.

1 Dim sngPrice Single
1 Dim dblÁr dupla
1 Halvány curPrice mint pénznem

Az Egyetlen adattípus a tizedespontot kissé eltérően kerekíti a kettős és a pénznem adattípustól, ezért a pontosság érdekében előnyös a kettős az egyszeres használata. A kettős legfeljebb 12 tizedesjegyet tartalmazhat, míg a valuta és az egyes kettő akár 4 tizedesjegyet is.

Ezen adattípusokról további információt itt talál.

Az Int változó deklarálása modulon vagy globális szinten

Az előző példákban az Int változót deklaráltuk egy eljáráson belül. Az eljárással deklarált változók csak ezen az eljáráson belül használhatók.

Ehelyett deklarálhatja az Int változókat modul vagy globális szinten.

Modul szint

A modul szintje a változókat a kódmodulok tetején a Homályos nyilatkozat.

Ezek a változók az adott kódmodul bármely eljárásával használhatók.

Globális szint

Globális szinten a változókat a kódmodulok tetején is deklarálják. Azonban ahelyett, hogy a Homályos nyilatkozatot, használja a Nyilvános utasítás, amely azt jelzi, hogy az egész változó használható a VBA -projekt során.

1 Nyilvános IntA mint egész

Ha az egész számot modul szinten deklarálná, majd egy másik modulban próbálná használni, akkor hiba lépne fel.

Ha azonban a Public kulcsszót használta volna az egész szám deklarálásához, akkor a hiba nem fordulna elő, és az eljárás tökéletesen futna.

String konvertálása Int

Előfordulhat olyan eset, amikor egy karakterláncként tárolt számot egész értékre kell konvertálnia.

A közvetlen ablakban észre fogja venni, hogy az egész szám jobbra megy, számot jelezve, míg a karakterlánc értéke balra - szövegre utalva.

Az Int konvertálása karakterlánccá

Ezzel szemben egy egész értéket karakterlánccá alakíthat át.

Ezen adattípusokról további információt itt talál.

Karakterláncként tárolt egész formátum

<>

Segít a fejlesztés a helyszínen, megosztva az oldalt a barátaiddal

wave wave wave wave wave