Denne opplæringen vil demonstrere hvordan du sender ut en matrise til et område ved hjelp av VBA.
Output (Print) Array to Range
Data som er lagret i en matrise kan enkelt sendes ut i et Excel -ark. Det er 3 måter å gjøre dette på.
Utdata til et annet område
Vi kan fylle ut en matrise med data fra ett område i Excel, og deretter sende dataene til et annet område i Excel.
12345678 | Public Sub TestOutput ()'erklærer matrisenDim rnArray () Som variant'fyll ut matrisen med områdetrnArray = Område ("A1: H24")'sende matrisen til et annet celleområdeOmråde ("J1: Q24") = rnArray ()Slutt Sub |
Hele matrisen kopieres i en kodelinje til matrisen, og sendes deretter i sin helhet til et annet celleområde på arket.
Sløyfe gjennom en matrise og sende dataene ut
Dette eksemplet går gjennom en matrise og sender matrisen til et område.
12345678910111213 | Offentlig Sub TestLoopArray ()'erklærer matrisenDim rnArray () Som variant'Angi heltallet for å lagre antall raderDim iRw som heltall'Tilordne område til en matrisevariabelrnArray = Område ("A1: A10")'bla gjennom verdiene i matrisenFor iRw = LBound (rnArray) Til UBound (rnArray)'fyll ut et annet område med dataeneCeller (iRw, 2) .Value = rnArray (iRw, 1)Neste iRwSlutt Sub |
LBoundog UBoundreturnerer startindeksen (nedre grense) og sluttindeksen (øvre grense) for en matrise, i dette tilfellet 1 og 10.
Transponere matrildata
Vi kan også transponere dataene i matrisen til Excel -arket. Med Transpose kan du vise dataene horisontalt over Excel -arket.
For eksempel, hvis vi har en liste over tilstander i Excel og ønsker å transponere dem.
Vi kan deretter kjøre følgende kode:
12345678 | Public Sub TestOutputTranspose ()'erklærer matrisenDim rnArray () Som variant'fyll det ut med områdetrnArray = Område ("A1: A38")'transponere dataeneOmråde (celler (1, 3), celler (1, 40)). Verdi = applikasjon.Transpose (rnArray)Slutt Sub |
Noe som ville resultere i følgende:
Utdata til Debug.Print
Vi kan også sende matrisverdiene til feilsøkingsvinduet.
12345678910111213 | Offentlig Sub TestLoopArray ()'erklærer matrisenDim rnArray () Som variant'Angi heltallet for å lagre antall raderDim iRw som heltall'Tilordne område til en matrisevariabelrnArray = Område ("A1: A10")'gå gjennom radene - 1 til 10For iRw = 1 Til UBound (rnArray)'utgang til det umiddelbare vinduetDebug.Print rnArray (iRw, 1)Neste iRwSlutt Sub |