Runtimefout 9-abonnement buiten bereik: oplossing

Runtimefout 9-abonnement buiten bereik: oplossing

De foutmelding “ Runtime Error 9 ” verschijnt in bepaalde scenario’s in Visual Basic in Microsoft Excel. Hoewel de belangrijkste reden voor deze fout het bereikprobleem in de hoofdbasiscode is, zijn er bepaalde scenario’s waarin u met dit dilemma te maken kunt krijgen. In deze handleiding hebben we alle mogelijke oplossingen besproken waarbij u met deze fout te maken kunt krijgen en hoe u dit kunt oplossen.

Fix 1 – Controleer het bereik dat in de code wordt vermeld

De “ Runtime Error 9 ” verschijnt wanneer het bereik dat in de code wordt beweerd, verkeerd is geconfigureerd. Controleer in dat geval dus het bereik van de variabelen die in de code worden genoemd.

Voorbeeld

Sub Newfunction()

Dim Array() als variant

Array(1) = “Nul”

Einde sub

1e minuut

Zoals u in de code kunt zien, wordt de array gedeclareerd als een variant, maar zonder enig juist bereik. Dat is de reden dat wanneer u deze code in de VB-editor uitvoert, u een subscriptfout krijgt.

Als u alleen het bereik in de code wijzigt, zou u klaar moeten zijn.

Fix 2 – Pas de naam van het werkblad aan

Als u met meerdere werkbladen tegelijk werkt, bestaat de kans dat de naam van het werkblad dat in de code wordt weergegeven, onjuist is.

Voorbeeld

Sub CommandButton1_Click()

Werkbladen(“Blad”).Bereik(“A1:D5”).Selecteer

Selectie.Kopiëren

Werkbladen(“Blad1”).Activeren

Werkbladen(“Blad1”).Bereik(“A1:D5”).Selecteer

ActiveSheet.Paste

Application.CutCopyMode = Onwaar

Einde sub

Zoals u kunt zien, geeft Excel u bij het uitvoeren van de bovengenoemde VBA-code een foutcode 9-subscript buiten bereik. De reden hiervoor is dat het bereik van de genoemde werkmap het werkblad is en dat de bewerking wordt uitgevoerd op werkblad 1, in plaats van op werkblad 2 .

Nu kunt u dit doen –

Stap 1 – Klik met de rechtermuisknop op het werkblad en tik op “ Hernoemen ” om de naam van het werkblad te wijzigen.

Stap 2 – Corrigeer de naam van de werkmap.

hernoem het min

Of,

je kunt de code op deze manier opnieuw aanpassen –

Sub CommandButton1_Click()

Werkbladen(“Blad”).Bereik(“A1:D5”).Selecteer

Selectie.Kopiëren

Werkbladen(“Blad2”).Activeren

Werkbladen(“Blad2”).Bereik(“A1:D5”).Selecteer

ActiveSheet.Paste

Application.CutCopyMode = Onwaar

Einde sub

naamwijziging werkruimte min

Voer deze code uit en u zult geen problemen meer hebben met het subscriptbereik.

Fix 3 – Macro’s inschakelen

Als het VBA-script macromodules gebruikt en u deze niet hebt ingeschakeld, zou het inschakelen van de macro’s u moeten helpen het probleem op te lossen.

Stap 1 – Ga naar de Excel- werkmap en klik op het menu “ Bestand ”.

Stap 2 Klik deze keer op het menu “ Opties ” in het linkerlint.

Excel-opties min. 1

Stap 3 – U moet het tabblad “ Vertrouwenscentrum ” vinden en openen.

Stap 4 – Klik in het rechterdeelvenster op de optie “ Vertrouwenscentrum-instellingen ” openen.

vertrouwenscentrum min 1

Stap 5 – Er zijn hier veel opties. Kies ervoor om het tabblad ” Macro’s ” te openen.

Stap 6 – Afhankelijk van de macro-instellingen in uw code, schakelt u nu een van deze opties in:

Disable all macros except digitally signed macros

Schakel alle macro’s in (niet aanbevolen: potentieel gevaarlijke codes kunnen worden uitgevoerd)

Stap 7 – Tik op “ OK ” om de wijzigingen in Excel op te slaan.

macro's inschakelen min

Nadat u deze wijzigingen in Excel hebt opgeslagen, kunt u de VB-code nogmaals uitvoeren.

Fix 4 – Debug de code stap voor stap

Net als andere terminals beschikt de Visual Basic-module over een debugging-tool. Gebruik deze om problemen met de code op te lossen.

Stap 1 – Nadat u de MS Excel- pagina hebt geopend, gaat u naar het tabblad “ Ontwikkelaar ”.

Stap 2 – Tik vervolgens op de eerste optie, namelijk “ Visual Basic ”.

visuele basis ontwikkelen min

Stap 3 – Wanneer u de Visual Basic-console heeft geopend, selecteert u de stap met de verdachte waarde.

selecteer de lijn min

Stap 4 – Open hierna het menu “ Debug ” en gebruik de tools daar om de bug te achterhalen die deze subscriptfout veroorzaakt.

debug het min

Nu kunt u de code zelf testen.

Fix 5 – Open en repareer het Excel-bestand

Het is mogelijk dat de spreadsheet zelf beschadigd is. U moet dus het Excel-bestand repareren en openen.

Stap 1 – Sla de wijzigingen op in de MS Excel-app.

Stap 2 – Start de Microsoft Excel- applicatie afzonderlijk.

Stap 3 – Tik deze keer op het eerste menu “ Bestand ”.

Stap 4 – Ga vervolgens deze kant op –

Open > Browse

open bladeren min e1707839238345

Stap 5 – De volgende stap is om handmatig naar de locatie van het Excel-bestand te gaan.

Stap 6 – Kies er vervolgens voor om het bestand daarin te selecteren.

Stap 7 – Schakel ten slotte de onderste optie in de lijst naar ‘ Openen en repareren ’.

openen en repareren min e1707839259705

Na het laden van het Excel-bestand kunt u eindelijk zonder problemen de visuele basiscode uitvoeren.

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *