VBA-uitvoer (afdrukken) Array naar bereik

Deze zelfstudie laat zien hoe u met VBA een array naar een bereik kunt uitvoeren.

Uitvoer (afdrukken) array naar bereik

Gegevens die in een array zijn opgeslagen, kunnen eenvoudig worden uitgevoerd in een Excel-blad. Er zijn 3 manieren om dit te doen.

Gegevens uitvoeren naar een ander bereik

We kunnen een array vullen met gegevens uit het ene bereik in Excel en de gegevens vervolgens uitvoeren naar een ander bereik in Excel.

12345678 Openbare subtestuitvoer()'declareer de array'Dim rnArray() als variant'vul de array in met het bereik'rnArray = Bereik ("A1:H24")'voer de array uit naar een ander celbereik'Bereik ("J1:Q24") = rnArray()Einde sub

De hele array wordt in één regel code naar de array gekopieerd en vervolgens in zijn geheel naar een ander cellenbereik op het blad uitgevoerd.

Een array doorlussen en de gegevens uitvoeren

Dit voorbeeld loopt door een array en voert de array uit naar een bereik.

12345678910111213 Openbare Sub TestLoopArray()'declareer de array'Dim rnArray() als variant'Declareer het gehele getal om het aantal rijen op te slaanDim iRw als geheel getal'Wijs een bereik toe aan een arrayvariabele'rnArray = Bereik ("A1:A10")'loop door de waarden in de array'Voor iRw = LBound(rnArray) Naar UBound(rnArray)'vul een ander bereik met de gegevens'Cellen (iRw, 2). Waarde = rnArray (iRw, 1)Volgende iRwEinde sub

LBounden UBoundgeeft de startindex (ondergrens) en eindindex (bovengrens) van een array terug, in dit geval 1 en 10.

Arraygegevens transponeren

We kunnen de gegevens in de array ook transponeren naar het Excel-blad. Met Transponeren kunt u de gegevens horizontaal over het Excel-blad weergeven.

Als we bijvoorbeeld een lijst met staten in Excel hebben en deze willen transponeren.

We zouden dan de volgende code kunnen uitvoeren:

12345678 Publieke Sub TestOutputTranspose()'declareer de array'Dim rnArray() als variant'vul het met het bereik'rnArray = Bereik ("A1:A38")'transponeer de gegevens'Bereik (Cellen (1, 3), Cellen (1, 40)). Waarde = Toepassing. Transponeren (rnArray)Einde sub

Wat zou resulteren in het volgende:

Uitvoer naar Debug.Print

We kunnen de arraywaarden ook uitvoeren naar het foutopsporingsvenster.

12345678910111213 Openbare Sub TestLoopArray()'declareer de array'Dim rnArray() als variant'Declareer het gehele getal om het aantal rijen op te slaanDim iRw als geheel getal'Wijs een bereik toe aan een arrayvariabele'rnArray = Bereik ("A1:A10")'loop door de rijen - 1 tot 10'Voor iRw = 1 Naar UBound(rnArray)'uitvoer naar het directe venster'Debug.Print rnArray(iRw, 1)Volgende iRwEinde sub

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave