Introduksjon til VBA Overflow Error

Vi møter mange typer hvis feil mens vi jobber med VBA. Feil kalles runtime-feil når de har fått en feil under kjøring av koden. Hver kode har også en viss kode som er tilordnet den i programmeringen av VBA. I excel er en slik feil VBA Overflow-feilen. Koden for denne feilen er kjøretidsfeil 6, som betyr overløp i programmeringen av VBA. Vi lærer om denne feilen i denne artikkelen.

Nå vet vi hva den overløpsfeilen er en type feil. La oss nå forstå hva denne feilen betyr. Hvis vi erklærer hvilken som helst variabel som en viss datatype, og verdien av variabelen overskrider grensen for datatypen til variabelen, får vi feilen for overløp. Hvis vi for eksempel definerer en variabel som heltall, og vi vet at heltall kan inneholde verdier opp til 32767 for positive tall og -32768 for negative tall. Så hvis vi gir noen innspill utover det området, vil vi møte overløpsfeil i VBA.

Overstrømningsfeil i lekmannsbetegnelser betyr at vi overbelaster en datatype med verdiene den kan inneholde. Slike tilfeller vil møte oss på denne feilen. Så for å unngå denne feilen, må vi være klar over hvilken datatype vi bruker, slik at vi kan forhindre den.

Vi vil se gjennom forskjellige eksempler at hvordan vi i forskjellige typer datatyper muligens vil støte på denne feilen.

Hvordan bruker jeg VBA Overflow Error i Excel?

Vi lærer hvordan du bruker en VBA Overflow Error-funksjon med få eksempler i Excel.

Du kan laste ned denne VBA OverFlow Error Excel Template her - VBA OverFlow Error Excel Template

Eksempel # 1 - Overløpsfeil

For det første eksemplet, la oss bruke heltall datatype. La oss prøve å overflyte verdiene slik at variabler ikke kan lagre dem og se feilen vi støter på.

Følg trinnene nedenfor for å bruke VBA Overflow Error-funksjon i Excel:

Trinn 1: For å begynne med VBA, det første vi trenger å gjøre, er å aktivere utvikler-fanen og deretter klikke på den for å åpne VB Editor fra Visual Basic-alternativet som vist på skjermdumpen nedenfor,

Trinn 2: Klikk på den og sett inn en modul som følger. Når vi klikker på modulen. Dobbeltklikk på den, og det vil åpne et nytt vindu for oss hvor vi skriver koden.

Trinn 3 : Vi vil se et tomt vindu på høyre side av oss, erklære en underfunksjon, og det er hvordan vi starter en makro som følger,

Kode:

 Undereksempel () Slutt Sub 

Trinn 4: Erklær en variabel som et heltall slik at den kan inneholde heltalverdi for oss,

Kode:

 Underprøve () Dim A Som heltal Slutt Sub 

Trinn 5: Nå i variabel En lagre en slik verdi som vil oversvømme datatypen som følger,

Kode:

 Underprøve () Dim A som heltall A = 4896 * 5000 Slutt sub 

Trinn 6: Vis nå verdien til A ved hjelp av msgbox-funksjonen,

Kode:

 Underprøve () Dim A som heltall A = 4896 * 5000 MsgBox A End Sub 

Trinn 7: Kjør koden ovenfor og se hvilket resultat vi får,

Vi mottok denne feilen fordi 4896 * 5000 er over den positive tallgrensen for heltaledatatypen å holde og variabel A er overfylt av denne verdien, så vi får denne feilen.

Eksempel 2 - Overløpsfeil

La oss i dette eksemplet BYTE-datatype. Vi vet at byte-datatype kan inneholde verdier fra 0 til 255, men andre verdier enn det området vil gi oss en feil. La oss finne ut av det.

Trinn 1: Vi har allerede satt inn modulen vår, vi kan jobbe med den samme eller opprette en ny. Men la oss jobbe med den samme modulen vi la inn. Dobbeltklikk på modulen for å gå inn i kodevinduet igjen,

Trinn 2: Erklær en annen underfunksjon som følger,

Kode:

 Sub Sample1 () Slutt Sub 

Trinn 3: Angi en variabel som datatype BYTE som følger,

Kode:

 Undereksempel1 () Dim A As Byte End Sub 

Trinn 4: Nå i variabel En butikkverdi over 255 som følger,

Kode:

 Undereksempel1 () Dim A As Byte A = 266 End Sub 

Trinn 5: Bruk en msgbox-funksjon for å vise verdien til A,

Kode:

 Underprøve1 () Dim A As Byte A = 266 MsgBox A End Sub 

Trinn 6: La oss kjøre koden ovenfor ved å trykke på F5 og se resultatet,

Trinn 7: La oss prøve å endre verdien til A til 244 og kjøre koden på nytt for å se resultatet,

Kode:

 Underprøve1 () Dim A As Byte A = 244 MsgBox A End Sub 

Trinn 8: Når vi kjører koden igjen ser vi følgende resultat,

Når vi først kjører kodevariabelen A, har verdier mer enn det området en BYTE-datatype kan inneholde, men i andre tilfelle har variabelen A data i datatypeområdet, så vi ikke støter på overløpsfeilen.

Eksempel # 3 - Overløpsfeil

La oss nå bruke LANG datatype som eksempel, da det er den mest brukte datatypen blant programmerere.

Trinn 1: Vi vil igjen jobbe i den samme modulen vi la inn tidligere. Vi trenger bare å dobbeltklikke på modulen, og vi er i den.

Trinn 2: Erklær en underfunksjon som vist på skjermdumpen.

Kode:

 Sub Sample2 () Slutt Sub 

Trinn 3: Angi en variabel som en LANG datatype som følger.

Kode:

 Sub Sample2 () Dim A As Long End Sub 

Trinn 4: Nå som i eksemplene ovenfor, la oss overvinne denne variabelen ved å gjøre den holde verdier over sitt område som følger.

Kode:

 Sub Sample2 () Dim A As Long A = 2000 * 365 End Sub 

Trinn 5: Bruk en msgbox-funksjon for å vise verdien til A som følger.

Kode:

 Sub Sample2 () Dim A As Long A = 2000 * 365 MsgBox A End Sub 

Trinn 6: Klikk på ovennevnte Kjør-knapp og se at vi støter på overflow-feil.

Trinn 7: Nå er det en metode for å overvinne denne feilen i lang datatype ved å bruke CLNG-funksjonen som følger.

Kode:

 Sub Sample2 () Dim A As Long A = CLng (2000) * 365 MsgBox A End Sub 

Trinn 8: Hvis vi igjen kjører koden, kan vi se følgende resultat.

Hva gjorde CLNG-funksjonen? Den konverterte verdien til et langt heltall som variabelen kan inneholde.

Hvordan overvinne overstrømningsfeil i VBA

Når vi møter overløpsfeil i VBA som betyr at en av variablene våre, er det ikke mer å ha noen verdier som den ikke kan inneholde. Vi må identifisere variabelen og utbedre den. Vi har også CLNG-funksjon for lange datatyper som kan hjelpe oss. Men å vite datatypen vår hjelper faktisk.

Ting å huske

Det er visse ting som vi må huske på overløpsfeil i VBA:

  • Overløpsfeil er en kjøretidsfeil.
  • Feilkoden for overløpsfeil er 6.
  • For å overvinne overflow-feil må vi vite hvilken datatype som kan inneholde hvor mye verdier.
  • CLNG-funksjon hjelper i overflow-feil for lange datatyper.

Anbefalte artikler

Dette er en guide til VBA Overflow Error. Her diskuterer vi hvordan du bruker Excel VBA Overflow Error Function sammen med praktiske eksempler og nedlastbar Excel-mal. Du kan også gå gjennom andre foreslåtte artikler -

  1. Kopier lim inn funksjon i VBA
  2. Substring Excel-funksjon
  3. VBA-abonnement utenfor rekkevidden
  4. Excel ISNUMBER-formel

Kategori: