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.

Dolg 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 pomnilniškega prostora v računalniku, to je spremenljivka pomnilnika z dvojnim celoštevilskim podatkovnim tipom (2 bajta) in polovica pomnilnika z dvojnim podatkovnim tipom (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.

Tu lahko prenesete to predlogo Excel VBA Long Data Type Excel - Predloga VBA Long Data Type Excel

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 Excelovega delovnega lista, 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 samo vrednosti od -31768 do 32767. V tem primeru »Vrstice. Count «vrne število, ki presega omejitev spremenljivke» integer «.

Če spremenljivki dodelite vrednost več kot 1 milijon, ki lahko vsebuje le 32767, se tukaj pojavi napaka prelivanja.

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 zadnja uporabljena številka vrstice 25000, zato 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 zadnjo uporabljeno številko vrstice delovnega lista, na katerem trenutno delam.

Kot kodirnik je pomembno vedeti velikost podatkov, ki jih boste imeli v prihodnosti. Ker se podatki trenutno lahko končajo pri 25000. vrstici, če pa se podatki povečajo čez mejo "Celo število", tj. 32767, povzročijo napako pri prelivanju.

Podatke bom na primer povečal na 32768. vrstice.

Zdaj, če znova zaženem isto kodo, ne bom dobil vrednosti, prej bom dobil napako kot spodaj.

Ne pozabite, da sem omejitev povečal za samo 1 preko meje vrednosti »Celo število«, 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 bo trenutek, ko prečka številko 2147483647, v VBA dobil napako s prelivanjem z LONG podatkovnim tipom. Za shranjevanje več kot 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.