VBA massiivi suurus - samm-sammuline juhend koos näidetega

Lang L: none (table-of-contents)

Selles artiklis pakume samm-sammult juhiseid massiivi suuruse leidmiseks VBA-koodi abil.

Kuidas leida massiivi suurust VBA-koodi abil?

Massiivi suuruse leidmiseks Exceli VBA koodi abil toimige järgmiselt.

  • 1. samm: alustame kõigepealt põhilisest, deklareerige VBA muutuja andmetüübi teisendina.

Kood:

Alammassiiv_Suurus () Dim MyArray variandina Lõpp-alam
  • 2. samm: kasutage selle muutuja jaoks funktsiooni ARRAY ja määrake mõned väärtused, nagu allpool näidatud.

Kood:

Sub Array_Size () Dim MyArray Variantina MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") End Sub
  • 3. samm: Ok, oleme massiivi nimele “MyArray” määranud mõned väärtused.

Oletame, et kui me peame kirjutama tsükli, et need massiivi väärtused lahtritesse salvestada, siis peame otsustama, mitu korda peab silmus töötama. See sõltub massiivi väärtuste arvust.

Ok, nüüd vaadake massiivi nimele “MyArray” määratud väärtuste arvu, massiivile on kokku määratud 7 väärtust, nii et nüüd teame, mitu korda peab tsükkel jooksma massiivi väärtuste lahtritesse salvestamiseks .

  • 4. samm: deklareerige VBA-s FOR-silmuse kirjutamiseks teine ​​muutuja täisarvuna.

Kood:

Sub Array_Size () Dim MyArray variandina MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k täisarvuna k = 1 kuni 7 Järgmine k End Sub
  • 5. samm: seal me läheme, oleme avanud FOR-silmuse, alustades vahemikust 1 kuni 7, kirjutage tsükli sisse CELLS-i vara salvestamiseks, nagu allpool näidatud.

Kood:

Sub Array_Size () Dim MyArray variandina MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k täisarvuna k = 1 kuni 7 Lahtrid (k, 1). Väärtus = MyArray (k) Järgmine k End Sub
  • 6. samm: OK, nüüd käivitage koodirida rea ​​kaupa, vajutades funktsiooniklahvi F8. Esmakordsel klahvi F8 vajutamisel käivitab see makro.
  • 7. samm: vajutage nuppu F8, nüüd hüpatakse massiivi väärtuse määramise reale.
  • 8. samm: massiivi nimes pole „MyArray” väärtusi, vajutage klahvi F8 ja kõik nimetatud väärtused määratakse massiivi muutujale.
  • 9. samm: nüüd käivitatakse silmus ja vajutage klahvi F8 kaks korda ja vaadake, millise väärtuse me lahtrisse A1 saame.
  • Vabandust! Hoidke, meie esimene väärtus massiivi muutuja juures on “Jan”, kuid tulemuse oleme saanud teise väärtusena “Feb”, kui esimene väärtuse silmus töötab.
  • 10. samm: Selle põhjuseks on see, et kui teie massiivi väärtuste arv algab nullist, mitte 1-st, siis peame lisama algsilmu nulliks.
  • 11. samm: kui aasa algusasendit on ühe võrra vähendatud, peaks ka lõppu vähendama 1 võrra, seega tehke lõpp 7 asemel 7.
  • Samm 12: Kui tsükli algus ja lõpp otsustavad veel ühe näpistamise, mis meil on vaja teha, st atribuudis CELLS oleme dünaamilise lahtrivalijana kasutanud muutujat „k”, kuid kuna meie tsükkel algab nullist, pole ühtegi lahtrit nulliga , nii et lisage muutujale “k” pluss 1.

Kood:

Sub Array_Size () Dim MyArray variandina MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k täisarvuna k = 0 kuni 6 Lahtrid (k + 1, 1). Väärtus = MyArray (k) Järgmine k End Sub
  • Samm 13: Nii et nüüd on tsükli esmakordsel käivitamisel "k" väärtus null ja kuna me oleme lisanud pluss 1, on "k" väärtus 1, seega viitab see lahtrile A1.
  • 14. samm: käivitage nüüd kood ja kõik massiivi väärtused salvestatakse lahtritesse.

Kuid antud juhul oleme silmus alguse ja lõpu suuruse käsitsi otsustanud, kuid massiivi suurust saab funktsioonide LBOUND & UBOUND abil hõlpsasti määrata.

Leidke massiivi suurus automaatselt

  • 1. samm: kui me lisasime ülaltoodud tsükli algus- ja lõpp-punkti, oleme käsitsi loendanud massiivis olevate väärtuste arvu, kuid massiivi käivitamiseks kasutage funktsiooni LBOUND ja selle läbipääsu jaoks muutuja nimi "MyArray".
  • 2. samm: viimase massiivi suuruse määramiseks kasutage funktsiooni UBOUND ja sisestage massiivi nimi "MyArray".

Kood:

Sub Array_Size () Dim MyArray variandina MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k täisarvuna k = Lboubd (MyArray) ) UBound (MyArray) lahtritesse (k + 1, 1). Väärtus = MyArray (k) Järgmine k End Sub
  • 3. samm: alustage nüüd rida rea ​​koodide kaupa ja vajutage klahvi F8, kuni see jõuab silmuse alguspunkti.
  • Samm 4: Nüüd asetage kursor esmalt valikule „LBound (MyArray)” ja vaadake, mida see ütleb.
  • 5. samm: lähtepunkti number on null, asetage kursor nüüd „UBound (MyArray)” ja vaadake, mida see ütleb.

See ütleb massiivi suuruseks 6, nii nagu ka see, kuidas me käsitsi alustamist ja lõpetamist mainisime, valivad UBOUND ja LBOUND meile numbrid automaatselt.

Huvitavad Artiklid...