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).