VBA adattípus - Hogyan lehet deklarálni és hozzárendelni az adattípusokat?

Tartalomjegyzék

VBA adattípus

Az adattípus bármely változó alapvető karaktere, ez azt jelenti, hogy milyen típusú értéket tárolhatunk a változóban, és mi a határ vagy az értéktartomány, amelyet a változóban tárolhatunk, az adattípusok beépített VBA és a felhasználónak vagy a fejlesztőnek tisztában kell lennie azzal, hogy melyik típusú érték melyik adattípusban tárolható. A változókhoz hozzárendelt adattípusok megmondják a változó fordító tárolási méretét.

A VBA-ban kétféle adattípusunk van, azaz numerikus és nem numerikus.

Mielőtt bármilyen adattípust rendelnénk, először deklarálnunk kell a változó nevét. A változó egy név, amely az értéket a hozzárendelt adattípuson keresztül tartja. Miközben nevet adunk a változónak, néhány dolgot szem előtt kell tartanunk.

Kétféleképpen definiálhatjuk a változót. Az egyik a „hallgatólagosan”, a másik pedig a „kifejezetten”.

  • A változó meghatározásának implicit módja a „DIM” szó és az adattípus használata nélkül. Például a MyValue = 500 a implicit módon deklarálható egy változó.
  • A változó meghatározásának kifejezett módja a „DIM” szó és a hozzá társított adattípus. Például Dim MyValue egész számként .

A top 2 adattípus típusa

Ahhoz, hogy az adattípust először a változóhoz rendeljük, meg kell értenünk az adattípusok típusait. A jobb megértés érdekében két táblába sorolhatjuk.

# 1 - Numerikus adattípusok

Ezek csak számértékeket tartalmazhatnak. A leggyakoribb numerikus adattípusok a bájt, az egész szám, a hosszú, az egy, a kettős, a pénznem és a tizedes.

Mindegyik adattípus megtarthatja a megfelelő értékeket. Az alábbiakban részletes magyarázatot adunk.

  • Egy bájt 0 és 255 közötti értékeket képes megtartani. 255-nél többet nem tartalmazhat.
  • Az egész szám -32768 és 32768 közötti értékeket tartalmazhat. Tízes számokat nem tartalmazhat.
  • Hosszú fér értékeket -2147483648 a 2147483648.
  • Az egyetlen adattípus legfeljebb 7 számjegyből állhat, például 1234567, 1,245564.
  • A kettős adattípus legfeljebb 15 számjegyből állhat. Ez csak a Single adattípus kibővítése.
  • A pénznem adattípusa 15 számjegyet tartalmazhat a tizedesérték előtt, 4 számjegyet pedig a tizedesérték után.
  • A tizedes adattípus legfeljebb 28 tizedesjegyet tartalmazhat. Ha 15 tizedesjegynél többet szeretne tárolni, használhatja ezt az adattípust.

# 2 - Nem numerikus adattípusok

Ezek az adattípusok a számértékek kivételével bármi más értéket tartalmazhatnak. A leggyakrabban használt nem numerikus adattípusok: Variant , String, Boolean, Date, Object.

  • Karakterlánc: Kétféle karakterlánc adattípus létezik. Az egyik számszerű adatokat, a másik pedig nem numerikus adatokat tartalmazhat.
  • Karakterlánc A rögzített hosszúság 1 és 65400 karakter közötti karaktereket tartalmazhat.
  • Karakterlánc A változó hosszúságú karakter 0 és 2 milliárd karakter közötti lehet.
  • A Boolean logikai eredményértékeket tartalmazhat, azaz IGAZ vagy HAMIS.
  • Egy dátum csak dátumértékeket tartalmazhat 1009. január 1-jétől 9999-ig
  • Az objektum csak a Microsoft termék objektumait tárolhatja. Például Munkalap, Munkafüzet, Tartomány, PowerPoint, Word.
  • Egy változatnak két adattípusa is van, azaz Szöveg és Numerikus.
  • A Variant Text ugyanolyan szövegértékeket tartalmazhat, mint a String Variable hosszúság változó.
  • A Numeric variáns ugyanolyan számértékeket tárolhat, mint a Double adattípus .

Példák különféle VBA adattípusok használatára

Például, ha először adattípust szeretnénk hozzárendelni, akkor a „ Dim” szó használatával deklarálnunk kell egy változót .

Kód:

DT_Példa1 () Dim k Vége Sub

Most az „As” szót használva hozzá kell rendelnünk az adattípust. Most az adattípust „ Byte” -ként fogom hozzárendelni .

Kód:

Sub DT_Example1 () Dim k As Byte End Sub

Mint tudjuk, a Byte adattípus 0 és 255 közötti értékeket képes megtartani. De a teszteléshez 255-nél nagyobb értéket rendelek hozzá.

Kód:

DT_Példa1 () Dim k As bájt k = 260 End Sub

Most, ha futtatom ezt a kódot, akkor a "Over Flow" hibát kapjuk.

Hasonlóképpen, más adattípusok is tartalmazhatnak értékeket a határértékeiknek megfelelően.

Most vessen egy pillantást az alábbi kódra.

Kód:

DT_Example2 () Dim k As logikai k = 100 MsgBox k End Sub

Az adattípus „Boolean”, azaz IGAZ vagy HAMIS. De a „k” változóhoz „100” értéket rendeltem.

Futtassa ezt a kódot, és nézze meg, mi történik.

Az eredmény „ Igaz”.

Az ok, amiért igazat kaptunk, mert az excel 0-nál többet bármit IGAZként, a 0-t HAMISAKként kezel.

Most nem numerikus értéket rendelek hozzá, és megnézem, mi történik.

Azért kaptuk a hibát, mert a „Boolean” nem fogadhat el TRUE vagy FALSE kivételével más szövegértékeket.

érdekes cikkek...