Exceli VBA püsiühenduse funktsioon

Kui tihti puutute kokku olukorraga, kus peate nimetama Exceliga töötavate massiivi andmete maksimaalse pikkuse või ülemise piiri? Enamasti, eks? Ja kuidas sa leiad sama? Võib-olla enamasti käsitsi. Kuid saate selle automatiseerida ja saada massiivi maksimaalse pikkuse või ülemise piiri, kasutades VBA funktsiooni nimega UBound.

Pealegi on sellel kõige ilusam viis silmusest läbi lüüa. Nagu näiteks, kui kasutate massiivis For silmust, soovisite kindlasti massiivi kõiki elemente silitada. Sel juhul oleks tüütu ülesanne ülempiir käsitsi välja selgitada ja silmus ära mainida. See vähendab ka koodi üldisust. Seetõttu on VBA UBound-funktsioon sellistes stsenaariumides mugav.

UBound tähistab ülemist piiri ja see annab massiivi ülemise või maksimaalse pikkuse Excelis VBA.

UBB-funktsiooni valem Excel VBA-s

Funktsioonil Excel VBA UBound on järgmine süntaks.

 UBound (massiivi nimi (, mõõde)) 

Kus,

  • Massiivi nimi : teie määratletud massiivi nimi. See argument on kohustuslik / nõutav argument.
  • Dimensioon: valikuline argument, mis määrab massiivi mõõtme. Olgu see ühemõõtmeline, kahemõõtmeline või mitmemõõtmeline massiiv. Vaikimisi eeldab see ühemõõtmelist massiivi, kui seda pole täpsustatud.

Kuna sellel funktsioonil on ainult kaks argumenti, on selle funktsiooni süntaksi meeldejätmine palju lihtsam.

Kuidas kasutada Exceli VBA püsiühenduse funktsiooni?

Õpime VBA UBound-funktsiooni kasutama koos mõne näitega Excelis.

Selle VBA UBound Exceli malli saate alla laadida siit - VBA UBound Exceli mall

Näide nr 1 - VBA püsiva ühemõõtmelise massiiviga

Funktsiooni UBound kasutamiseks VBA-s toimige järgmiselt.

1. samm . VB redigeerija avamiseks klõpsake vahekaardil Arendaja nuppu Visual Basic .

2. samm: uue tühja mooduli lisamiseks VBE-le klõpsake sisestusklahvi ja valige vahekaart Moodul .

3. samm: alustage VBE-s makro kirjutamist ja määrake muutuja nimi.

Kood:

 Sub Onedm_Ubound () Dim IndiaCity (4) Nagu keelpill Sub 

Siin määratletakse muutuja IndiaCity 5 elemendiga. Muutuja tüüp on string.

Märkus. Massiiv algab 0-st (null). Seega koosneb see massiiv viiest elemendist.

4. samm: määrake massiivi elementidele väärtused.

Kood:

 Sub Onedm_Piiranguteta () Dim IndiaCity (4) Nagu String IndiaCity (0) = "Mumbai" IndiaCity (1) = "Bengaluru" IndiaCity (2) = "Hyderabad" IndiaCity (3) = "Delhi" IndiaCity (4) = "Pune "Lõpeta alam 

Siin on zeroti elemendil väärtus, mille väärtus on “Mumbai”, esimesel elemendil on väärtus, mis on määratud kui “Bengaluru” jne.

5. samm . Massiivi ülemise piiri saamiseks kasutage funktsiooni UBound koos MsgBoxiga.

Kood:

 Sub Onedm_Piiranguteta () Dim IndiaCity (4) Nagu String IndiaCity (0) = "Mumbai" IndiaCity (1) = "Bengaluru" IndiaCity (2) = "Hyderabad" IndiaCity (3) = "Delhi" IndiaCity (4) = "Pune "MsgBox" Massiivi ülemine piir: "& UBound (IndiaCity) End Sub 

6. samm: käivitage see kood, vajutades otse F5 või vasakul ülaosas paneelil käsku Käivita. Ilmub teadete lahter koos teatega “ Massiivi ülaosa on: 4 ”.

Pange tähele, et funktsioon UBound ei leia massiivi elementidest ülempiiri. See lihtsalt selgitab välja massiivi maksimaalse arvu elemente.

Näide 2 - VBA Ubound kahemõõtmelise massiiviga

Funktsiooni UBound kasutamiseks VBA-s toimige järgmiselt.

1. samm: määrake muutuja, mis mahutab kahemõõtmelisi andmeid.

Kood:

 Sub TwoDm_UBound () Dim Array_Test (0 kuni 6, 1 kuni 8) kui stringi lõpp Sub 

2. samm: määratlege uus muutuja Sõnum ja kasutage seda jaotises MsgBox. See muutuja aitab meil printida mõlema mõõtme ülemised piirid üheaegselt.

Kood:

 Sub TwoDm_UBound () Dim Array_Test (0 kuni 6, 1 kuni 8) String Dim sõnumina MsgBox Message End Sub 

3. samm: proovige nüüd järgmisi avaldusi, mis võimaldavad süsteemil massiivi mõlemad mõõtmed sama sõnumikasti printida.

Kood:

 Sub TwoDm_UBound () Dim Array_Test (0 kuni 6, 1 kuni 8) Nagu string Dim Message Message = "Esimese mõõtme ülemine piir on:" & UBound (Array_Test, 1) & vbCrLf Message = Message & "Teise mõõtme ülemine piir on" : "& UBound (Array_Test, 2) & vbCrLf MsgBox-teate lõpp-alam 

Kaks ülaltoodud koodis nimetatud lauset võimaldavad süsteemil printida mõlemad mõõtmed samasse teadete kasti. Esimene avaldus salvestab muutuja Sõnum esimese mõõtme ülemise piiri väärtuse ja lõpetab rea (vbCrLf). Teine avaldus lisab muutujale Message määratud esimese väärtuse ja ühendab selle hüpikteatega teise mõõtme ülaosaga.

Kuna vbCrLf-i kasutatakse mõlemas avalduses, töötab see mõlemas avalduses siin readina / veeruna.

4. samm: käivitage kood, vajutades nuppu F5 või nuppu Käivita, ja vaadake väljundit.

Sarnastel joontel võime liikuda mitme mõõtmeni ja näha nende kõigi ülemist piiri.

Näide # 3 - UBound-funktsioon lehe andmete automaatseks värskendamiseks

Oletame, et teil on allpool ekraanipildil näidatud andmekogum.

Neid andmeid värskendatakse ja värskendatud andmeid peate aeg-ajalt kopeerima. Nüüd on tõesti tüütu töö kontrollida andmete värskendusi alati ja kopeerida see uuele lehele. See võtab ka palju aega. Kas saame proovida seda automatiseerida, kasutades VBA funktsiooni UBound? Vaatame.

Lehe andmete automaatseks värskendamiseks funktsiooni VBA UBound abil toimige järgmiselt.

1. samm: määratlege muutuja, luues makro.

Kood:

 Alam Ex3_UBound () Tühjenda DataUpdate () variandina lõpp-alam 

2. samm: aktiveerige tööleht, mis sisaldab teie andmeid. Sel juhul on lehe nimi “ Data ”.

Kood:

 Sub Ex3_UBound () Tühjendage DataUpdate () variatsioonilehtedena ("Data"). 

3. samm: määrake vahemik äsja loodud muutujale. Sel eesmärgil kasutame aktiveeritud lehtede vahemikku.

Kood:

 Sub Ex3_UBound () Tühjenda DataUpdate () Variatsioonilehtedena ("Data"). Aktiveerige DataUpdate = Range ("A2", Range ("A1"). End (xlDown). End (xlToRight)) End Sub 

4. samm: lisage oma Exceli uus tööleht, kuhu värskendatud andmeid saab kopeerida ja kleepida.

Kood:

 Sub Ex3_UBound () Tühjenda DataUpdate () Variatsioonilehtedena ("Data"). Aktiveerige DataUpdate = Range ("A2", Range ("A1"). End (xlDown) .End (xlToRight)) Worksheets.Add End Sub 

5. samm. Nüüd kasutage allolevat koodirida, mis võimaldab andmelehe andmeid kopeerida ja kleepida vastloodud Exceli lehele automaatselt.

Kood:

 Sub Ex3_UBound () Tühjendage DataUpdate () variatsioonilehtedena ("Data"). Aktiveerige DataUpdate = Range ("A2", Range ("A1"). End (xlDown) .End (xlToRight)) Worksheets.Add Range (ActiveCell, ActiveCell.Offset (UBound (DataUpdate, 1) - 1, UBound (DataUpdate, 2) - 1)) = DataUpdate End Sub 

Ülaltoodud kood korvab lahtrid andmelehelt ülespoole ja ülemise piirini, mida saab kasutada kasutatava funktsiooni UBound abil, ning seab vahemiku muutujale DataUpdate.

6. samm: käivitage kood, vajutades nuppu F5 või nuppu Käivita, ja vaadake väljundit.

Nagu näete, on Exceli töövihikusse lisatud uus leht, kus kõik andmelehe andmed kopeeritakse automaatselt.

See on dünaamiline kood. Ma pean silmas seda, et ütlen seda dünaamiliseks, ehkki lisan veergude ja ridade kaupa, kopeeritakse see automaatselt uuele lehele.

7. samm: lisame andmetele mõned read ja veerud ning vaatame, kas need tegelikult toimivad.

8. samm: pärast andmelehe värskendamist klõpsake uuesti nuppu Käivita ja vaadake võlu.

Kui näete, lisatakse uus leht (värviline) ja sellele lehele lisatakse uus veerg Vanus koos kahe uue reaga. See tähendab, et olenemata sellest, mida me põhifailis (Andmed) värskendame, kopeerib see kood automaatselt kõik sellest ja kleepib uuele lehele.

Asjad, mida meeles pidada

  • UBound annab massiivi ülemise piiri / maksimaalse pikkuse, mitte massiivi andmepunktide ülemise piiri.
  • Massiiv algab alati 0- ndast kohast paralleelselt enamiku programmeerimiskeeltega nagu C, C ++, Python.
  • Kui teie massiiv on mitmemõõtmeline, peate määrama ka dimensiooniargumendi, mis võtab täisarvulised väärtused nagu 1, 2, 3 jne. 1 tähistab ühemõõtmelist, 2 kahemõõtmelist ja nii edasi.

Soovitatavad artiklid

See on juhend VBA püsivate funktsioonide kohta. Siin arutatakse, kuidas kasutada rakendust Excel VBA UBound Function koos mõne praktilise näite ja allalaaditava excelimalliga. Võite vaadata ka meie teisi soovitatud artikleid -

  1. VBA jagatud funktsioon näidetega
  2. Exceli suurtähtede funktsioon
  3. VBA matš
  4. ÜLEMINEKU funktsioon Excelis
  5. Kuidas kasutada VBA töölehti?

Kategooria: