Abonnement uden for rækkevidde - Nem Excel VBA

Indholdsfortegnelse

Arbejdsbøger | Arbejdsark | Array

Det 'abonnement uden for rækkevidde'fejl i Excel VBA opstår, når du refererer til et ikke -eksisterende samlingmedlem eller et ikke -eksisterende array -element.

Placer en kommandoknap på dit regneark, og tilføj nedenstående kodelinjer. For at udføre kodelinjerne skal du klikke på kommandoknappen på arket.

Arbejdsbøger

Workbooks -samlingen i Excel VBA indeholder alle de projektmappeobjekter, der i øjeblikket er åbne.

1. Kodelinjen herunder lukker sales.xlsm.

Arbejdsbøger ("salg.xlsm"). Luk

Resultat, når der ikke er nogen åben projektmappe med dette navn:

Bemærk: for at rette denne 'subscript out of range' fejl (driftstid fejl 9), skal du åbne sales.xlsm, før du klikker på kommandoknappen.

Arbejdsark

Regnearkssamlingen i Excel VBA indeholder alle regnearksobjekterne i en projektmappe. Vores projektmappe har 3 regneark.

1. Kodelinjen herunder forsøger at placere ordet Hello i celle A1 på det 4. regneark.

Regneark (4) .Range ("A1"). Value = "Hej"

Resultat, når du klikker på kommandoknappen på arket:

Forklaring: Fejlen "subscript out of range" dukker op, fordi der ikke er noget 4. regneark. For at løse denne fejl skal du ændre 4 til et 1, 2 eller 3 (eller indsæt et nyt regneark ved at klikke på plustegnet).

Array

En matrix er en gruppe af variabler. I Excel VBA kan du referere til en bestemt variabel (element) i en matrix ved hjælp af matrixnavnet og indeksnummeret.

1. Den første kodelinje nedenfor erklærer et String -array med navnet Films. Arrayen består af fem elementer.

2. Dernæst initialiserer vi hvert element i arrayet.

3. Den sidste kode linje forsøger at vise det sjette element ved hjælp af en MsgBox.

Dæmp film (1 til 5) som streng
Films (1) = "Ringenes Herre"
Films (2) = "Hastighed"
Films (3) = "Star Wars"
Films (4) = "The Godfather"
Films (5) = "Pulp Fiction"
MsgBox -film (6)

Resultat, når du klikker på kommandoknappen på arket:

Forklaring: Fejlen 'subscript out of range' dukker op, fordi der ikke er noget sjette element. For at rette op på denne fejl skal du ændre 6 til en 1, 2, 3, 4 eller 5 (eller deklarere en String -array med 6 elementer).

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave