Denne vejledning vil demonstrere, hvordan man sender et array til et område ved hjælp af VBA.
Output (Udskriv) Array til område
Data, der er gemt i en matrix, kan let sendes til et Excel -ark. Der er 3 måder at gøre dette på.
Output data til et andet område
Vi kunne udfylde et array med data fra et område i Excel og derefter sende dataene til et andet område i Excel.
12345678 | Public Sub TestOutput ()'erklærer arrayetDim rnArray () Som variant'udfyld arrayet med intervalletrnArray = Område ("A1: H24")'udsender matrixen til et andet cellecelleOmråde ("J1: Q24") = rnArray ()Afslut Sub |
Hele arrayet kopieres i en kodelinje til arrayet og sendes derefter i sin helhed til et andet cellecelle på arket.
Looping gennem et array og udsendelse af data
Dette eksempel løber gennem et array og sender arrayet til et område.
12345678910111213 | Public Sub TestLoopArray ()'erklærer arrayetDim rnArray () Som variant'Deklarer heltalet for at gemme antallet af rækkerDim iRw som heltal'Tildel område til en matrixvariabelrnArray = Område ("A1: A10")'gå igennem værdierne i arrayetFor iRw = LBound (rnArray) Til UBound (rnArray)'udfyld et andet område med dataeneCeller (iRw, 2) .Værdi = rnArray (iRw, 1)Næste iRwAfslut Sub |
LBundtog UBoundreturnerer startindeks (lavere bund) og slutindeks (øvre grænse) for en matrix, i dette tilfælde 1 og 10.
Transponer arraydata
Vi kan også transponere dataene i Array til Excel -arket. Transpose giver dig mulighed for at vise dataene vandret på tværs af Excel -arket.
For eksempel, hvis vi har en liste over tilstande i Excel og ønsker at gennemføre dem.
Vi kunne derefter køre følgende kode:
12345678 | Public Sub TestOutputTranspose ()'erklærer arrayetDim rnArray () Som variant'udfyld det med intervalletrnArray = Område ("A1: A38")'transponere dataeneOmråde (celler (1, 3), celler (1, 40)). Værdi = applikation.Transpose (rnArray)Afslut Sub |
Hvilket ville resultere i følgende:
Output til Debug.Print
Vi kan også udsende arrayværdierne til fejlfindingsvinduet.
12345678910111213 | Public Sub TestLoopArray ()'erklærer arrayetDim rnArray () Som variant'Deklarer heltalet for at gemme antallet af rækkerDim iRw som heltal'Tildel område til en matrixvariabelrnArray = Område ("A1: A10")'loop gennem rækkerne - 1 til 10For iRw = 1 Til UBound (rnArray)'output til det umiddelbare vindueDebug.Print rnArray (iRw, 1)Næste iRwAfslut Sub |