Ha még nem ismeri a hibakezelést, javasoljuk, hogy először olvassa el ezt a példát. Amikor hiba történik Excel VBA fordul elő, a tulajdonságai Hiba objektum tele vannak információkkal.
Helyzet:
Az alábbi program kiszámítja a számok négyzetgyökét.
1. Helyezzen el egy parancsgombot a munkalapon, és adja hozzá a következő kódsorokat:
Dim rng As Range, cell As Range
Set rng = Kiválasztás
Minden cellához In rng
GoTo InvalidValue hiba esetén:
cell.Value = Sqr (cell.Value)
Következő cella
Kilépés a Subból
Helytelen érték:
MsgBox Err.Number & "" & Err.Description & "at cell" & cell.Address
Folytatás Következő
Eredmény, ha a Tartomány ("B2: B6") lehetőséget választja, és a lapon lévő parancsgombra kattint:
Magyarázat: hiba esetén az Err objektum számtulajdonsága az aktuális hiba egyedi hibaszámával, a Leírás tulajdonság pedig az aktuális hiba hibaleírásával van kitöltve.
2. Előfordulhat, hogy ezek a leírások nem túl hasznosak a program felhasználói számára. A hibaüzeneteket felhasználóbarátabbá teheti, ha a makró utolsó részét az alábbiak szerint módosítja:
Helytelen érték:
Válassza ki a Hiba hibaszám lehetőséget
Eset = 5
MsgBox "Nem lehet kiszámítani a negatív szám négyzetgyökét a cellában" & cell.Address
Eset = 13
MsgBox "Nem lehet kiszámítani a szöveg négyzetgyökét a cellában" & cell.Address
Vége Kiválasztás
Folytatás Következő
Tipp: nézze át a Select Case programot, ha többet szeretne megtudni a Select Case struktúráról.
Eredmény: