VBA -utmatning (utskrift) Array to Range

Denna handledning visar hur man matar ut en array till ett intervall med VBA.

Utmatning (utskrift) Array to Range

Data som lagras i en array kan enkelt matas ut i ett Excel -ark. Det finns 3 sätt att göra detta.

Mata ut data till ett annat område

Vi kan fylla i en array med data från ett intervall i Excel och sedan mata ut data till ett annat intervall i Excel.

12345678 Public Sub TestOutput ()'deklarera matrisenDim rnArray () Som variant'fyll i matrisen med intervalletrnArray = Område ("A1: H24")'mata ut matrisen till ett annat cellområdeOmråde ("J1: Q24") = rnArray ()Avsluta Sub

Hela matrisen kopieras i en kodrad till matrisen och skickas sedan i sin helhet till ett annat cellområde på arket.

Looping Through a Array och mata ut data

Det här exemplet går genom en matris och matar ut matrisen till ett intervall.

12345678910111213 Public Sub TestLoopArray ()'deklarera matrisenDim rnArray () Som variant'Deklarera heltalet för att lagra antalet raderDim iRw som heltal'Tilldela intervallet till en matrisvariabelrnArray = Område ("A1: A10")'gå igenom värdena i matrisenFör iRw = LBound (rnArray) Till UBound (rnArray)'fylla i ett annat intervall med dataCeller (iRw, 2) .Värde = rnArray (iRw, 1)Nästa iRwAvsluta Sub

LBundoch UBoundreturnerar startindex (nedre gräns) och slutindex (övre gräns) för en array, i detta fall 1 och 10.

Transponera matrisdata

Vi kan också överföra data i Array till Excel -bladet. Med Transpose kan du visa data horisontellt över Excel -arket.

Om vi ​​till exempel har en lista över tillstånd i Excel och vill transponera dem.

Vi kan sedan köra följande kod:

12345678 Public Sub TestOutputTranspose ()'deklarera matrisenDim rnArray () Som variant'fylla det med intervalletrnArray = Område ("A1: A38")'införliva uppgifternaOmråde (Celler (1, 3), Celler (1, 40)). Värde = Application.Transpose (rnArray)Avsluta Sub

Vilket skulle resultera i följande:

Utdata till Debug.Print

Vi kan också mata ut matrisvärdena till felsökningsfönstret.

12345678910111213 Public Sub TestLoopArray ()'deklarera matrisenDim rnArray () Som variant'Deklarera heltalet för att lagra antalet raderDim iRw som heltal'Tilldela intervallet till en matrisvariabelrnArray = Område ("A1: A10")'gå igenom raderna - 1 till 10För iRw = 1 Till UBound (rnArray)'utmatning till det omedelbara fönstretDebug.Print rnArray (iRw, 1)Nästa iRwAvsluta Sub

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave