VBA-heltal

Ett heltal är en datatyp i VBA som ges till vilken variabel som helst för att innehålla heltalvärden, begränsningarna eller parentesen för antalet som en heltalvariabel kan innehålla liknar i VBA som för andra språk, vilken variabel som helst definieras som heltal variabel med DIM-satsen eller nyckelordet i VBA.

Excel VBA-heltal

Datatyper är så viktiga i vilket kodningsspråk som helst eftersom alla variabeldeklarationer bör följas av datatyp som tilldelas dessa variabler. Vi har flera datatyper att arbeta med och varje datatyp har sina egna fördelar och nackdelar. När vi deklarerar variabler är det viktigt att veta detaljer om den specifika datatypen. Det här är artikeln tillägnad datatypen ”Integer” i VBA. Vi visar dig den fullständiga bilden av datatypen ”Heltal”.

Vad är heltalens datatyp?

Heltals är heltal som kan vara positiva, negativa och noll men inte ett bråktal. I VBA-sammanhang är "Heltal" en datatyp som vi tilldelar variablerna. Det är en numerisk datatyp som kan innehålla heltal utan decimaler. Heltals datatyp 2 byte lagring som är hälften av VBA LONG datatyp, dvs. 4 byte.

Exempel på Excel VBA heltal datatyp

Nedan följer exemplen på VBA Integer Data-typen.

Du kan ladda ner denna VBA Integer Data Type Template här - VBA Integer Data Type Template

Exempel nr 1

När vi deklarerar en variabel är det nödvändigt att tilldela en datatyp till den och heltal en av dem som vanligtvis används av alla användare baserat på kraven.

Som jag sa kan heltal bara innehålla heltal, inte några bråktal. Följ stegen nedan för att se exemplet på en VBA-heltal datatyp.

Steg 1: Förklara variabeln som heltal.

Koda:

 Sub Integer_Example () Dim k Som Integer End Sub 

Steg 2: Tilldela värdet 500 till variabeln “k”.

Koda:

 Sub Integer_Example1 () Dim k Som Integer k = 500 End Sub 

Steg 3: Visa värdet i VBA-meddelanderutan.

Koda:

 Sub Integer_Example1 () Dim k Som Integer k = 500 MsgBox k End Sub 

När vi kör koden med F5-tangenten eller manuellt kan vi se 500 i meddelandefältet.

Exempel 2

Nu kommer jag att tilldela värdet -500 till variabeln “k”.

Koda:

 Sub Integer_Example2 () Dim k Som Integer k = -500 MsgBox k End Sub 

Kör den här koden manuellt eller tryck på F5 då kommer den också att visa värdet -500 i meddelandefältet.

Exempel # 3

Som jag sa VBA Integer datatyp kan bara innehålla heltal, inte bråknummer som 25.655 eller 47.145.

Jag kommer dock att försöka tilldela fraktionsnumret till en VBA Integer-datatyp. För ett exempel, se nedanstående kod.

Koda:

 Sub Integer_Example3 () Dim k As Integer k = 85.456 MsgBox k End Sub 

Jag har tilldelat variabeln “k” 85.456. Jag kommer att köra denna VBA-kod för att se vad resultatet är.

  • Det har returnerat resultatet till 85 trots att jag har tilldelat värdet på bråknumret. Detta beror på att VBA rundar fraktionsnumren till närmaste heltal.
  • Alla bråknummer som är mindre än 0,5 kommer att avrundas ner till närmaste heltal. Till exempel 2.456 = 2, 45.475 = 45.
  • Alla bråktal som är större än 0,5 avrundas upp till närmaste heltal. För ett exempel 10,56 = 11, 14,789 = 15.

Om du vill titta igen på det sammanlagda heltalet låter värdet “k” till 85,58.

Koda:

 Sub Integer_Example3 () Dim k As Integer k = 85.58 MsgBox k End Sub 

När jag kör den här koden med F5-tangenten eller manuellt kommer den att returnera 86 eftersom allt mer än 0,5 kommer att avrundas till nästa heltal.

Begränsningar av heltaldatatyp i Excel VBA

Överflödesfel: Heltalsdatatypen ska fungera bra så länge det tilldelade värdet är mellan -32768 och 32767. När det passerar gränsen på vardera sidan kommer det att orsaka ett fel.

För ett exempel, se nedanstående kod.

Koda:

 Sub Integer_Example4 () Dim k As Integer k = 40000 MsgBox k End Sub 

Jag har tilldelat värdet 40000 till variabeln “k”.

Eftersom jag har fullständig kunskap om heltaldatatyp vet jag säkert att det inte fungerar eftersom heltaldatatyp inte kan innehålla värdet mer än 32767.

Låt oss köra koden manuellt eller genom F5-tangenten och se vad som händer.

Hoppsan !!!

Jag fick felet som "Overflow" eftersom datatypen Integer inte kan innehålla mer än 32767 för positiva siffror och -32768 för negativa siffror.

Fel i typavvikelse: Heltalsdata kan bara innehålla numeriska värden mellan -32768 till 32767. Om något nummer som tilldelats mer än dessa siffror visar överflödesfel.

Nu ska jag försöka tilldela text eller strängvärden till den. I exemplet nedan har jag tilldelat värdet ”Hej”.

Koda:

 Sub Integer_Example4 () Dim k As Integer k = "Hello" MsgBox k End Sub 

Jag kommer att köra den här koden genom köralternativet eller manuellt och se vad som händer.

Det visar felet som "Typmatchning" eftersom vi inte kan tilldela variabeln "heltal datatyp" ett textvärde.