VBA masīvi programmā Excel Kā strādāt ar masīvu funkciju VBA?

Satura rādītājs

VBA blokos tiek izmantoti objektu grupas definēšana kopā, VBA ir deviņas dažādas masīva funkcijas, un tās ir ARRAY, ERASE, FILTER, ISARRAY, JOIN, LBOUND, REDIM, SPLIT un UBOUND, visas šīs ir iebūvētas masīva funkcijas VBA, masīvs funkcija dod mums vērtību dotajam argumentam.

Excel VBA masīva funkcija

Masīva funkcija ir vērtību kopums vienā mainīgajā. Mēs varam piegādāt masīvu apakšprogrammai VBA, funkcijās un rekvizītos. VBA masīvi ir viena no bieži izmantotajām metodēm, lai mainīgajā saglabātu vairāk nekā vienu vērtību.

Excel VBA masīva funkcijas piemēri

Tā vietā, lai deklarētu daudzus mainīgos un saglabātu vērtības, mēs varam izmantot masīvu Excel VBA, lai vērtību saglabātu vienā mainīgajā. Piemēram, aplūkojiet zemāk redzamo piemēru

Kods:

Apakšgrupas_Ex () Dim x kā vesels skaitlis Dim y As Integer x = 1 y = 2 Diapazons ("A1"). Vērtība = x Diapazons ("A2"). Vērtība = y Beigas Sub

Iepriekš minētajā piemērā esmu deklarējis divus mainīgos, ko sauc par x & y. X vērtība ir 1, bet Y - vērtība 2.

Tagad aplūkojiet Excel VBA masīva funkcijas piemēru ar vienu mainīgo.

Kods:

Apakšgrupas_Ex () Dim x (1 līdz 2) kā vesels skaitlis ("A1"). Vērtība = x (1) Diapazons ("A2"). Vērtība = x (2) Beigas Sub

Tagad, ja palaidīsit šo VBA kodu, mums šūnās A1 un A2 būs vērtības.

Masīva mainīgie atgrieza rezultātu kā nulli. Tas ir tāpēc, ka mēs tikko deklarējām mainīgos kā divus, bet šiem mainīgajiem mēs neesam piešķīruši nevienu vērtību. Tāpēc mums ir jāpiešķir vērtības šiem mainīgajiem.

Kods:

Apakšgrupas_Ex () Dim x (1 līdz 2) kā vesels skaitlis x (1) = 10 x (2) = 20 Diapazons ("A1"). Vērtība = x (1) Diapazons ("A2"). Vērtība = x (2) ) Beigu apakšnodaļa

Tagad palaidiet kodu, lai iegūtu rezultātus.

Pirms mēs ievadām masīvu mainīgo vērtības šūnām, mums jāpiešķir vērtība tiem deklarētajiem masīva mainīgajiem, tāpat kā mēs piešķirām mainīgos x (1) = 10 & x (2) = 20.

1. piemērs - ievietojiet sērijas numurus, izmantojot statisko masīvu

Apskatīsim statiskā masīva izmantošanas piemēru sērijas numuru ievietošanai. Tas ir līdzīgs iepriekšējam.

Kods:

Sub StaticArray_Ex () Dim x (1 līdz 5) kā vesels skaitlis x (1) = 10 x (2) = 20 x (3) = 30 x (4) = 40 x (5) = 50 Diapazons ("A1"). Vērtība = x (1) Diapazons ("A2"). Vērtība = x (2) Diapazons ("A3"). Vērtība = x (3) Diapazons ("A4"). Vērtība = x (4) Diapazons ("A5") ). Vērtība = x (5) Beigas Sub

Tagad palaidiet šo kodu, lai ievietotu sērijas numurus.

2. piemērs - ievietojiet sērijas numurus, izmantojot dinamisko masīvu

Tagad mēs redzēsim otrā veida masīvu, ti, dinamisko masīvu

Kods:

Sub DynamicArray_Ex () Dim x () kā vesels skaitlis ReDim x (5) x (1) = 10 x (2) = 20 x (3) = 30 x (4) = 40 x (5) = 50 Diapazons ("A1") ). Vērtība = x (1) Diapazons ("A2"). Vērtība = x (2) Diapazons ("A3"). Vērtība = x (3) Diapazons ("A4"). Vērtība = x (4) Diapazons (" A5 "). Vērtība = x (5) Beigas apakšdaļa

Tagad palaidiet šo kodu, lai iegūtu sērijas numuru rezultātu. Mēs iegūstam tādu pašu rezultātu kā iepriekšējais.

Ja pamanāt, ka deklarējot mainīgo, mēs neesam sniedzis masīva garumu, tā vietā mēs esam piešķīruši pēdējo VBA masīva vērtību, izmantojot funkciju VBA Redim. Redim ir masīva pēdējā nododamā vērtība.

3. piemērs - izveidojiet funkciju Ievietojiet mēneša nosaukumus, izmantojot masīvu

Mēs esam redzējuši, kā strādāt ar masīviem VBA. Tagad mēs redzēsim, kā strādāt ar masīvu, lai programmā Excel izveidotu VBA funkciju. Funkcija ir nekas cits kā lietotāja definēta funkcija VBA. Papildus iebūvēto funkciju izmantošanai, Excel VBA ļauj mums izveidot arī savas funkcijas.

Kods:

Funkciju List_Of_Months () List_Of_Months = Masīvs ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov "," Dec ") beigu funkcija

Šis kods izveidos funkciju, kas mūsu Excel lapā var ievietot mēnešus.

Nokopējiet un ielīmējiet zemāk esošo kodu savā modulī.

Tagad saglabājiet šo kodu un aizveriet VBA redaktoru. Pēc VBA redaktora aizvēršanas dodieties uz darblapu un ierakstiet tikko izveidoto formulu, un darblapā vajadzētu redzēt formulu ar nosaukumu List_Of_Months .

Atveriet formulu un nospiediet taustiņu Enter. Mēs iegūsim pirmā mēneša vārdu, ti, Jan.

Ja formulu ievietojat vēl vienu reizi, mēs tomēr saņemsim tikai Jan, nevis nākamo mēnesi, februāri. Tāpēc vispirms vienā rindā atlasiet 12 kolonnas.

Tagad atveriet formulu D1 šūnā.

Tā kā formulu esam izveidojuši ar masīvu, formulas jāaizver tikai kā masīva formula. Tāpēc turiet nospiestu taustiņu kombināciju Ctrl + Shift + Enter. Mums būtu visi 12 mēnešu vārdi.

Atceramās lietas

  • Ir pieejami vēl divi masīvu veidi, ti, divdimensiju masīvs un daudzdimensionāls masīvs.
  • Masīvu sākums ir no 0, nevis no 1. Nulle nozīmē pirmo rindu un pirmo kolonnu.
  • Masīvs ir liela tēma. Jums tas jāsaprot, lai pārietu uz nākamo līmeni.
  • Masīva mainīgais būs tāds, kurā ir daudz datu katru reizi, kad tas pāriet uz nākamo līmeni.
  • Redim tiek izmantots masīva pēdējā garuma glabāšanai dinamiskā masīva tipā.

Interesanti raksti...