VBA Long (primer) - Vodnik po korakih za dolg tip podatkov v Excelu VBA

Kaj je dolga vrsta podatkov v VBA?

Long je podatkovni tip v VBA, ki se uporablja za shranjevanje številskih vrednosti, vemo, da ima celo število tudi številske vrednosti, vendar se Long razlikuje od celih števil, saj je obseg za shranjevanje podatkov zelo velik v primeru dolgega tipa podatkov tudi v dolgem podatkovni tip lahko imamo tudi decimalne vrednosti, to je vgrajeni podatkovni tip.

"Dolgo," kot že ime pove, mora vsebovati vrednost nečesa velikega. »Dolgo« je številčna podatkovna vrsta v programu VBA Excel.

Dolgi podatkovni tip v Excelu VBA lahko vsebuje vrednosti od 0 do 2, 147, 483, 647 za pozitivna števila, za negativno število pa od 0 do -2, 147, 483, 648.

Podatkovni tip VBA Long zahteva 4 bajte pomnilnika računalnika. To je dvojni celoštevilčni podatkovni tip spremenljivke pomnilnika (2 bajta) in polovica dvojnega podatkovnega tipa spremenljivke pomnilnika (8 bajtov)

Nikoli nisem videl scenarija, ko bi želel v svoji kratki karieri v celoti izkoristiti mejo podatkovnega tipa VBA Long. Pokazal pa vam bom nekaj primerov, da boste to bolje razumeli.

Primeri vrste podatkov VBA Long

Spodaj so primeri vrste podatkov excel VBA Long.

Dolg primer VBA št. 1

Takoj, ko spremenljivko razglasite za vrsto podatkov "Long", lahko dodelite vrednosti od -2, 147, 483, 648 do 2, 147, 483, 648.

Spremenljivko na primer razglasite za dolg tip podatkov.

Koda:

Sub Long_Example1 () Dim k As Long End Sub

Dodelimo vrednost kot skupno število vrstic na delovnem listu.

Če želite dobiti skupno število vrstic v kodi delovnega lista excel, je »Vrstice. Štej «

Koda:

Sub Long_Example1 () Dim k As Long k = Vrstice. Count End Sub

Zdaj prikaži vrednost v polju za sporočila.

Koda:

Sub Long_Example1 () Dim k As Long k = Vrstice. Count MsgBox k End Sub

Zaženite to kodo in si oglejte, kakšno je skupno število vrstic na delovnem listu.

Piše, da imamo na delovnem listu več kot milijon vrstic.

Zdaj bom za boljše razumevanje spremenil vrsto podatkov iz LONG v INTEGER.

Koda:

Sub Long_Example1 () Dim k As Integer k = Rows.Count MsgBox k End Sub

Če zaženem kodo VBA, se sporočilo o napaki prikaže kot »Overflow«.

Razlog, zakaj smo prišli do te napake v VBA, ker lahko podatkovni tip "Integer" vsebuje vrednosti od -31768 do 32767. V tem primeru je »Vrstice. Count «vrne število, ki presega omejitev spremenljivke» integer «.

Če spremenljivki dodelite vrednost več kot 1 milijon, ki lahko vsebuje le 32767, tukaj pride do napake pri prelivanju.

Dolg primer VBA št. 2

Poiščite zadnjo vrstico z uporabo dolge spremenljivke

Iskanje zadnje uporabljene vrstice delovnega lista je najpomembnejše pri kodiranju. Da bi našli zadnjo uporabljeno vrstico delovnega lista, je treba prijaviti spremenljivko. Medtem ko razglasitev spremenljivke in dodelitev podatkovnega tipa zahtevata nekaj zdrave pameti.

Predpostavimo, da imate podatke, ki se končajo na 25000 vrstic, kot je prikazano na spodnji sliki.

Zdaj vem, da je bila nazadnje uporabljena številka vrstice 25000. Za to ne potrebujemo podatkovnega tipa „LONG“, ker mi lahko podatkovni tip „INTEGER“ da zadnjo vrstico.

Za informacije si oglejte spodnjo kodo.

Koda:

Sub Long_Example1 () Dim k As Integer k = Celice (Vrstice. Število, 1). End (xlUp). Vrstica MsgBox k End Sub

Če zaženem to kodo, dobim številko zadnje uporabljene vrstice delovnega lista, na katerem trenutno delam.

Kot kodirnik je pomembno vedeti velikost podatkov, ki jih boste imeli v prihodnosti. Ker v tem trenutku, se podatki lahko konča na 25000 th vrstico, če pa podatki povečuje presegajo "Integer" mejo, to je 32.767, to povzroči napako prelivanja.

Na primer, bom povečala podatke 32.768 th vrstic.

Če znova zaženem isto kodo, ne bom dobil vrednosti. Napako bom dobil kot spodaj.

Ne pozabite, da sem omejitev povečal za samo 1 preko meje vrednosti "Integer", zato sem dobil napako Overflow.

Pomembno je torej vedeti velikost podatkov, preden spremenljivki dodelite podatkovni tip. Vedno je boljša možnost, da spremenljivko razglasite kot »LONG«, ne da bi v prihodnosti razmišljali o svoji velikosti podatkov.

Alternative Excel VBA Long Variable

Verjetno že razmišljate o tem, kaj, če želimo imeti vrednost večjo od meje dolge spremenljivke. Za to moramo uporabiti različne vrste podatkov, tj. Bodisi VBA »String« ali »Variant«.

Ne pozabite, da bomo v trenutku, ko prečkamo številko 2147483647, v VBA dobili napako pri prelivanju s podatkovnim tipom LONG. Če želimo shraniti več od te številke, moramo uporabiti podatkovni tip »String« ali »Variant«.

Za niz

Koda:

Sub Long_Example2 () Dim k As String k = 2147483648 MsgBox k End Sub

Za Variant

Koda:

Sub Long_Example2 () Dim k As Variant k = 2147483648 MsgBox k End Sub

Ko zaženemo zgornje kode, bo prikazana omenjena številka.

Zanimive Članki...