Hem Sociala medier Arbetar med Arrays för VBA-programmering i Excel 2016 - dummies

Arbetar med Arrays för VBA-programmering i Excel 2016 - dummies

Innehållsförteckning:

Video: You Bet Your Life: Secret Word - Tree / Milk / Spoon / Sky 2024

Video: You Bet Your Life: Secret Word - Tree / Milk / Spoon / Sky 2024
Anonim

De flesta programmeringsspråk stöder arrays, inklusive VBA. En array är en grupp av variabler som delar ett namn. Du hänvisar till en viss variabel i arrayen med hjälp av matrisnamnet och ett indexnummer inom parentes. Du kan till exempel definiera en grupp med 12 strängvariabler för att hålla namnen på årets månader. Om du heter arrayen MonthNames kan du referera till det första elementet i arrayen som MonthNames (1), det andra elementet som MonthNames (2) och så vidare.

Declaration arrays

Innan du kan använda en array, måste du måste förklara det. Inga undantag. Till skillnad från normala variabler är VBA mycket strikt om denna regel. Du deklarerar en array med en dim eller offentlig uppgift, precis som du förklarar en vanlig variabel. Men du måste också ange antalet element i arrayen. Du gör detta genom att ange det första indexnumret, sökordet till och det sista indexnumret - alla inom parentes. Följande exempel visar hur man deklarerar en grupp med 100 heltal:

Dim MyArray (1 till 100) Som heltal

När du deklarerar en array kan du välja att bara ange det övre indexet. Om du släpper bort det lägre indexet antar VBA att det är 0. Därför förklarar båda följande påståenden samma 101-elementars array:

Dim MyArray (0 till 100) Som Integer Dim MyArray (100) Som heltal

Om du vill att VBA antar att 1 (i stället för 0) är det lägre indexet för dina arrayer, ta med följande påstående i avsnittet Deklarationer högst upp på din modul:

Alternativ Bas 1

Detta uttalande tvingar VBA att använda 1 som det första indexnumret för arrays som endast anger det övre indexet. Om detta uttalande är närvarande är följande uttalanden identiska, båda deklarerar en 100-elementars array:

Dim MyArray (1 till 100) Som Integer Dim MyArray (100) Som Integer

Multidimensionella Arrays

De arrays skapade i de tidigare exemplen är alla endimensionella arrays. Tänk på endimensionella arrays som en enda rad av värden. Arrayer du skapar i VBA kan ha så många som 60 dimensioner - även om du sällan behöver mer än två eller tre dimensioner i en array. Följande exempel deklarerar en 81-heltalsmatris med två dimensioner:

Dim MyArray (1 till 9, 1 till 9) Som heltal

Du kan tänka på denna matris som upptar en 9 x 9-matris - perfekt för att lagra alla siffror i ett Sudoku-pussel.

För att hänvisa till ett specifikt element i denna array måste du ange två indexnummer (liknar dess "rad" och dess "kolumn" i matrisen).Följande exempel visar hur du kan tilldela ett värde till ett element i denna array:

MyArray (3, 4) = 125

Detta uttalande tilldelar ett värde till ett enskilt element i matrisen. Om du tänker på matrisen i form av en 9 x 9-matris, tilldelar detta 125 till elementet som ligger i den tredje raden och den fjärde kolumnen i matrisen.

Så här förklarar du en tredimensionell array med 1 000 element:

Dim My3DArray (1 till 10, 1 till 10, 1 till 10) Som heltal

Du kan tänka på en tredimensionell array som en kub. Att visualisera en array med mer än tre dimensioner är svårare.

Dynamiska arrayer

Du kan också skapa dynamiska arrayer. En dynamisk array har inte ett förinställt antal element. Förklara en dynamisk grupp med en tom uppsättning parenteser:

Dim MyArray () Som heltal

Innan du kan använda denna array måste du använda ReDim-förklaringen för att berätta för VBA hur många element matrisen har. Vanligtvis bestäms antalet element i matrisen medan koden körs. Du kan använda ReDim-satsen ett antal gånger, ändra arrayens storlek så ofta som behövs. Följande exempel visar hur man ändrar antalet element i en dynamisk grupp. Det förutsätter att NumElements-variabeln innehåller ett värde som din kod beräknat.

ReDim MyArray (1 till NumElements)

När du redimensionerar en array med ReDim, torkar du bort alla värden som för tillfället lagras i matriselementen. Du kan undvika att förstöra de gamla värdena med hjälp av Preserve-sökordet. I följande exempel visas hur du kan behålla en arrays värden när du redimensionerar arrayen:

ReDim Preserve MyArray (1 till NumElements)

Om MyArray för närvarande har tio element och utför det föregående uttalandet med NumElements som motsvarar 12, De första tio elementen förblir intakta och arrayen har plats för ytterligare två element (upp till numret i variabelnumret). Om NumElements är lika med 7 behålls de första sju elementen, men de återstående tre elementen uppfyller deras nedgång.

Arbetar med Arrays för VBA-programmering i Excel 2016 - dummies

Redaktörens val

Hur man använder parameterhanteraren i AutoCAD 2014 - dummies

Hur man använder parameterhanteraren i AutoCAD 2014 - dummies

Både AutoCAD och AutoCAD LT inkluderar parametrarna Managerpaletten, tillgänglig från fliken Hantera paneler i fliken Parametriska fliken. Du kan använda parameterhanteraren för att ge alla de dimensionella begränsningarna mer förnuftiga namn än d1 och d2, men du kan (ännu mer användbart) skriva uttryck istället för vanliga numeriska värden, som du kan ...

Hur man använder POLygon Command i AutoCAD 2014 - dummies

Hur man använder POLygon Command i AutoCAD 2014 - dummies

Rektanglar och andra slutna polyliner är typer av polygoner eller slutna figurer med tre eller flera sidor. Kommandot AutoCAD POLygon ger ett snabbt sätt att skriva regelbundna polygoner (alla sidor och vinklar är lika). Följande steg visar hur du använder POLygon-kommandot: Klicka på Polygon från rullgardinsmenyn Rektangel på ...

Redaktörens val

Photoshop CS4 Filter Gallery Färger - dummies

Photoshop CS4 Filter Gallery Färger - dummies

De flesta Photoshop CS4-kreativa filter använder förgrundsfärg, bakgrundsfärg eller båda, och Du bör välja dessa färger innan du går in i Filtergalleriet. Använd den här listan för viktiga Photoshop-filter och de färger som de använder: Filtrera färg (er) Filter Färg (ar) KonstnärKolorerade Penna Bakgrundsskiss → Grafisk Penna Förgrunden + Bakgrund Konstnärlig Glöd Förgrunden + Bakgrundsskiss → Halvton ...

Photoshop 6 För Dummies Cheat Sheet - Dummies

Photoshop 6 För Dummies Cheat Sheet - Dummies

Photoshop 6 erbjuder en kreativ överblick för redigering, ändring och förbättring av bilder . Utöver en välutrustad verktygslåda får du en mängd paletter och genvägar som hjälper dig att navigera, lagra, välja, måla och redigera dina bilder med en knapptryckning eller två.

Photoshop CS5 Allt-i-ett för Dummies Cheat Sheet - Dummies

Photoshop CS5 Allt-i-ett för Dummies Cheat Sheet - Dummies

Precis när du tror branschledaren inom digital bildhanteringsprogramvara hade varje funktion, verktyg, klocka och visselpipa som du kan behöva, Photoshop lyckas ge mer än en gång. Photoshop CS5 behåller allt det hade i tidigare versioner och ger sedan några nya funktioner för att hjälpa dig med dina uppgifter, till exempel Puppet Warp, förbättras ...

Redaktörens val

Nikon D300s för Dummies Cheat Sheet - dummies

Nikon D300s för Dummies Cheat Sheet - dummies

Din Nikon D300s är en fotografs dröm och producerar exceptionella bilder även i tuffa belysning, fantastisk autofokusering och även HD-filminspelning. För att hjälpa dig att bekanta dig med din kamera, här är en snabbguide som markerar kamerans externa kontroller och beskriver hur du får tillgång till viktiga bildtagnings- och uppspelningsfunktioner.

Wi-Fi-överföring på din Nikon D5500 - dummies

Wi-Fi-överföring på din Nikon D5500 - dummies

Med din kameras Wi-Fi-funktion kan du ansluta din Nikon D5500 trådlöst till vissa "smarta" enheter: Speciellt Android och Apple iOS-baserade telefoner, tabletter och mediaspelare (till exempel Apples iPod touch). Innan du kan njuta av denna funktion måste du installera Nikon Mobile Wireless Utility-appen på din enhet. För Android-baserade enheter söker du efter ...