Run-time error '6' Overflow

Run-time error '6' Overflow
2020-04-11T14:26:52+02:00
2020-04-11T14:46:32+02:00
2022-10-15T21:25:30+02:00
Chris321
Sziasztok lenne egy kis problémám még új vagyok a programozás terén és azt nem értem meg hogyha számolok ÁFÁ-t 10.000-el az jó de ha 100.000-el szeretnék arra már ezt kapom meg "Run-time error '6' Overflow" hol lehet a hiba hol rontottam el??

Előre is köszi a segítséget.

Private
Sub btnGomb_Click() Dim szam, eredmeny As Integer If txtOsszeg.Text = "" Then lblEredmeny.Caption = "A szövegmező nem maradhat üresen!" Else szam = txtOsszeg.Text eredmeny = szam * 0.27 + szam lblEredmeny.Caption = eredmeny End If End Sub
Mutasd a teljes hozzászólást!
Szia!

ezt kapom meg "Run-time error '6' Overflow" hol lehet a hiba hol rontottam el??

Nagyon egyszerű a magyarázat:
Az eredmeny változód integer típusú, aminek az értéktartománya -32,768 to 32,767.
Tehát ne integerként definiált, hanem long típusúnak (értéktartomány -2,147,483,648 to 2,147,483,647).
Más: Kérdezheted, hogy akkor a szam változód miatt miért nem jelez hibát? Azért, mert a szam valtozó nem integer típusú, hanem variant - mivel nem adtál meg hozzá típust.
A helyes definíció: Dim szam As Long, eredmeny As Long.
Minden egyes változónál külön meg kell adni a típust is. Ha nem adod meg, akkor Variant lesz.
Itt az adat típusokhoz kapcsolódó leírás:
Data type summary

Üdv.
Mutasd a teljes hozzászólást!

Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd