Arbeidsbøker | Regneark | Array
Den 'abonnement utenfor rekkevidde'feil i Excel VBA oppstår når du refererer til et ikke -eksisterende samlingsmedlem eller et ikke -eksisterende matriseelement.
Plasser en kommandoknapp på regnearket og legg til kodelinjene nedenfor. For å utføre kodelinjene, klikk på kommandoknappen på arket.
Arbeidsbøker
Arbeidsbøker -samlingen i Excel VBA inneholder alle arbeidsbokobjektene som er åpne.
1. Kodelinjen nedenfor stenger sales.xlsm.
Arbeidsbøker ("sales.xlsm"). Lukk
Resultat når det ikke er noen åpen arbeidsbok med dette navnet:
Merk: for å fikse denne "subscript out of range" -feilen (kjøretidsfeil 9), åpne sales.xlsm før du klikker på kommandoknappen.
Arbeidsark
Regneark -samlingen i Excel VBA inneholder alle regnearkobjektene i en arbeidsbok. Arbeidsboken vår har 3 regneark.
1. Kodelinjen nedenfor prøver å plassere ordet Hei i celle A1 på det fjerde regnearket.
Regneark (4) .Range ("A1"). Verdi = "Hei"
Resultat når du klikker på kommandoknappen på arket:
Forklaring: "subscript out of range" -feilen dukker opp fordi det ikke er noe fjerde regneark. For å fikse denne feilen, endre 4 til a 1, 2 eller 3 (eller sett inn et nytt regneark ved å klikke pluss -tegnet).
Array
En matrise er en gruppe variabler. I Excel VBA kan du referere til en bestemt variabel (element) i en matrise ved å bruke matrisenavnet og indeksnummeret.
1. Den første kodelinjen nedenfor deklarerer en strengmatrise med navnefilmer. Arrayen består av fem elementer.
2. Deretter initialiserer vi hvert element i matrisen.
3. Den siste kodelinjen prøver å vise det sjette elementet ved hjelp av en MsgBox.
Dim Films (1 To 5) As String
Films (1) = "Ringenes Herre"
Films (2) = "Hastighet"
Films (3) = "Star Wars"
Films (4) = "The Godfather"
Films (5) = "Pulp Fiction"
MsgBox -filmer (6)
Resultat når du klikker på kommandoknappen på arket:
Forklaring: "subscript out of range" -feilen dukker opp fordi det ikke er noe sjette element. For å fikse denne feilen, endre 6 til en 1, 2, 3, 4 eller 5 (eller deklarere en strengmatrise med 6 elementer).