Prenumeration utanför intervallet - Easy Excel VBA

Innehållsförteckning

Arbetsböcker | Arbetsblad | Array

Den 'prenumeration utanför intervallet'fel i Excel VBA inträffar när du hänvisar till en obefintlig samlingsmedlem eller ett obefintligt matriselement.

Placera en kommandoknapp på ditt kalkylblad och lägg till kodraderna nedan. För att köra kodraderna, klicka på kommandoknappen på arket.

Arbetsböcker

Arbetsboksamlingen i Excel VBA innehåller alla arbetsbokobjekt som för närvarande är öppna.

1. Kodraden nedan stänger sales.xlsm.

Arbetsböcker ("sales.xlsm"). Stäng

Resultat när det inte finns någon öppen arbetsbok med detta namn:

Obs: för att åtgärda detta felmeddelande "prenumeration utanför intervallet" (körtidsfel 9), öppna sales.xlsm innan du klickar på kommandoknappen.

Arbetsblad

Arbetsbladssamlingen i Excel VBA innehåller alla kalkylbladsobjekt i en arbetsbok. Vår arbetsbok har 3 kalkylblad.

1. Kodraden nedan försöker placera ordet Hej i cell A1 på det fjärde kalkylbladet.

Arbetsblad (4) .Range ("A1"). Value = "Hello"

Resultat när du klickar på kommandoknappen på arket:

Förklaring: felmeddelandet "subscript out of range" dyker upp eftersom det inte finns något fjärde kalkylblad. För att åtgärda detta fel, ändra 4 till 1, 2 eller 3 (eller infoga ett nytt kalkylblad genom att klicka på plustecknet).

Array

En array är en grupp variabler. I Excel VBA kan du hänvisa till en specifik variabel (element) i en matris med hjälp av matrisnamnet och indexnumret.

1. Den första kodraden nedan deklarerar en strängmatris med namnet Films. Arrayen består av fem element.

2. Därefter initierar vi varje element i matrisen.

3. Den sista kodraden försöker visa det sjätte elementet med en MsgBox.

Dimma filmer (1 till 5) som sträng
Films (1) = "Ringenes Herre"
Films (2) = "Speed"
Films (3) = "Star Wars"
Films (4) = "Gudfadern"
Films (5) = "Pulp Fiction"
MsgBox -filmer (6)

Resultat när du klickar på kommandoknappen på arket:

Förklaring: felmeddelandet "subscript out of range" dyker upp eftersom det inte finns något sjätte element. För att åtgärda detta fel ändrar du 6 till 1, 2, 3, 4 eller 5 (eller deklarerar en strängmatris med 6 element).

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave