Efnisyfirlit
Í þessari grein munum við sýna þér ástæðurnar fyrir " Áskrift utan sviðs " villunnar í Excel VBA og hvernig á að leysa þær.
Hlaða niður æfingasniðmáti
Þú getur halað niður ókeypis Excel sniðmátinu héðan.
Subscript Out of Range Error in VBA.xlsm
Hvað er áskrift utan sviðsvilla í VBA?
VBA áskrift utan sviðs villa kemur upp þegar við reynum að fá aðgang að einhverjum meðlimum eða fylkissafni sem ekki er til í Excel. Þetta er „ Run-Time Error 9 “ tegund af villu í VBA kóðun í Excel.
Villa lítur venjulega svona út,
5 ástæður með lausnum á áskriftarvillu utan sviðsvillu í VBA
Þessi hluti mun fjalla um 5 algengustu ástæðurnar fyrir því að gerist Áskrift utan sviðs villa og hverjar eru lausnirnar á henni.
1. Áskrift utan sviðsvilla í VBA fyrir verkefnabók sem ekki er til
Þegar þú reynir að fá aðgang að Excel vinnubók sem er ekki opin færðu villuna „ Áskrift utan sviðs “.
Ef við reynum að keyra kóðann sem sýndur er hér að ofan fáum við villuna vegna þess að það er engin Excel vinnubók sem heitir " Sales “ sem er nú opið.
Lausn
Til að leysa þessa villu skaltu fyrst opna Excel vinnubókina sem þú vilt fá aðgang að og síðan keyra fjölvi.
2. Áskrift utan sviðsvilla í VBA fyrir enginVinnublað
Þegar þú reynir að fá aðgang að vinnublaði sem er ekki til í Excel vinnubókinni færðu líka villuna „ Áskrift utan sviðs “ í VBA .
Ef við reynum að keyra kóðann sem sýndur er hér að ofan fáum við villuna vegna þess að það er engin „ Sheet2 ” vinnublað tiltækt í vinnubókinni okkar.
Lausn
Til að leysa þessa villu þarftu að hafa Excel blaðið sem þú vilt nálgast í vinnubókinni sem er í gangi og keyrðu síðan makróið.
3. Subscript Out of Range Error in VBA for Undefined Array Elements
Ef þú skilgreinir ekki lengd kvikrar fylkis með orð DIM eða REDIM í Excel VBA , þá færðu villuna „ Subscript out of range “.
Í kóðanum hér að ofan lýstum við fylkinu í víddinni frá 5 til 10 en vísuðum til áskriftar vísitölu 3, sem er lægri en 5.
Lausn
Til að leysa þetta skaltu lýsa yfir vísitölunni á milli fylkisvíddarinnar.
Þetta stykki e of code virkar fullkomlega vel vegna þess að hér var vísað til áskriftar vísitölunnar 5, sem er innan bilsins 5 til 10.
4. Subscript Out of Range Error in VBA for Invalid Collection/ Fylki
Þegar áskrift er stærri eða minni en svið mögulegrar áskriftar, þá mun Áskrift utan sviðs villa koma upp.
Sjáðu dæmið hér að ofan, viðlýst breytunni sem fylki, en í stað þess að úthluta upphafs- og endapunkti, höfum við beint fyrsta fylkinu með gildinu 20.
Lausn
To laga þetta mál, við þurfum að úthluta lengd fylkisins með upphafs- og endapunkti.
Þessi kóði gefur enga villu vegna þess að nú höfum við lýst yfir fylkinu. með upphafspunkt 1 og endapunkt 5.
5. Subscript Out of Range Error in VBA for Shorthand Script
Ef þú notar styttingu úr a áskrift og það vísar til ógilds þáttar þá færðu " Subscript out of range " villuna í Excel VBA . Til dæmis er [A2] stytting fyrir ActiveSheet.Range(A2) .
Lausn
Til að laga þetta, þú verður að nota gilt lyklanafn og vísitölu fyrir safnið. Í stað þess að skrifa ActiveSheet.Range(A2) geturðu bara skrifað [ A2 ].
Kosturinn við Excel áskrift utan sviðsvillu í VBA
- VBA áskrift utan sviðs villa eða „ Run-Time Error 9 “ er mjög gagnlegt til að tilgreina staðsetningu villunnar þar sem hún átti sér stað í VBA kóðanum.
- Þessi villa hjálpar notendum að finna tegund villunnar svo þeir geti athugað og fundið lausnirnar samkvæmt villukóðanum.
Hlutur til að muna
- Þar sem þessi villa safnar saman hverju skrefi kóða til að beina okkur nákvæmlega hvaða hluta afkóðann sem við þurfum í raun að grípa til, svo það er betra að setja saman hverja kóðalínu eina í einu með því að ýta á F8 takkann ef þú ert með risastóra kóðalínu.
Niðurstaða
Þessi grein sýndi þér ástæður og lausnir Excel Subscript out of range villu í VBA. Ég vona að þessi grein hafi verið þér mjög gagnleg. Ekki hika við að spyrja spurninga varðandi efnið.