Excelin VBA-taulukot: Mikä on, kuinka käyttää ja taulukoiden tyypit VBA:ssa
Mikä on VBA Array?
Taulukko määritellään muistipaikaksi, joka pystyy tallentamaan useamman kuin yhden arvon. Kaikkien arvojen on oltava samaa tietotyyppiä. Oletetaan, että haluat tallentaa luettelon suosikkijuomistasi yhteen muuttujaan. Voit tehdä sen VBA-taulukon avulla.
Taulukkoa käyttämällä voit viitata vastaaviin arvoihin samalla nimellä. Voit erottaa ne toisistaan hakemiston tai alaindeksin avulla. Yksittäisiin arvoihin viitataan Excelin VBA-taulukon elementteinä. Ne ovat vierekkäisiä indeksistä 0 korkeimpaan indeksin arvoon.
Tämä opetusohjelma olettaa, että käytät Microsoft kunnostautua versio 2013. Tieto pätee edelleen myös muihin versioihin Microsoft Excel samoin.
Mitkä ovat taulukoiden edut?
Seuraavassa on joitain VBA-taulukkofunktion tarjoamia etuja
- Ryhmittele loogisesti toisiinsa liittyvät tiedot yhteen – oletetaan, että haluat tallentaa luettelon opiskelijoista. Voit käyttää yhtä taulukkomuuttujaa, jossa on erilliset sijainnit opiskelijaluokille, kuten lastentarha, alakoulu, lukio, lukio jne.
- Taulukot tekevät ylläpidettävän koodin kirjoittamisesta helppoa. Samoille loogisesti liittyville tiedoille sen avulla voit määrittää yhden muuttujan sen sijaan, että määrittäisit useamman kuin yhden muuttujan.
- Parempi suorituskyky – kun taulukko on määritetty, tietojen hakeminen, lajittelu ja muokkaaminen on nopeampaa.
VBA:n taulukoiden tyypit
VBA tukee kahta tyyppiä, nimittäin;
- Staattinen – Tämän tyyppisissä taulukoissa on kiinteä ennalta määrätty määrä elementtejä, jotka voidaan tallentaa. Staattisen taulukon tietotyypin kokoa ei voi muuttaa. Nämä ovat hyödyllisiä, kun haluat työskennellä tunnettujen kokonaisuuksien, kuten viikonpäivien lukumäärän, sukupuolen jne., kanssa.Esimerkin: Dim ArrayMonth(12) As String
- Dynaaminen – Tämän tyyppisissä taulukoissa ei ole kiinteää ennalta määrättyä määrää elementtejä, jotka voidaan tallentaa. Nämä ovat hyödyllisiä, kun työskentelet kokonaisuuksien kanssa, joiden lukumäärää et voi määrittää etukäteen.Esimerkin: Dim ArrayMonth() Varianttina
Syntaksi taulukoiden ilmoittamiseen
Staattiset taulukot
Ilmoituksen syntaksi STAATTINEN taulukot ovat seuraavat:
Dim arrayName (n) as datatype
TÄSSÄ,
Koodi | Toiminta |
---|---|
Himmeä arrayName (n) -tietotyyppi |
|
Dynaamiset taulukot
Ilmoituksen syntaksi DYNAAMINEN taulukot ovat seuraavat:
Dim arrayName() as datatype ReDim arrayName(4)
TÄSSÄ,
Koodi | Toiminta |
---|---|
Himmeä arrayName () -tietotyyppi |
|
Redim arrayName(4) |
|
Array Mitat
Taulukko voi olla yksiulotteinen, kaksiulotteinen tai moniulotteinen.
- Yksi ulottuvuus: Tässä ulottuvuudessa taulukko käyttää vain yhtä indeksiä. Esimerkiksi joukko ihmisiä eri ikäisistä.
- Kaksi ulottuvuutta: Tässä ulottuvuudessa taulukko käyttää kahta indeksiä. Esimerkiksi jokaisella luokalla on useita oppilaita. Se vaatii luokkien lukumäärän ja opiskelijamäärän jokaisessa luokassa
- Moniulotteinen: Tässä ulottuvuudessa taulukko käyttää useampaa kuin kahta indeksiä. Esimerkiksi lämpötilat päiväsaikaan. ( 30, 40, 20).
Arrayn käyttäminen Excel VBA:ssa
Luomme yksinkertaisen sovelluksen. Tämä sovellus täyttää Excel-taulukon taulukkomuuttujan tiedoilla. Tässä VBA Array -esimerkissä aiomme tehdä seuraavat asiat.
- Luoda uusi Microsoft Excel-työkirja ja tallenna se Excel-makrokäyttöisenä työkirjana (*.xlsm)
- Lisää komentopainike työkirjaan
- Aseta komentopainikkeen nimi ja kuvatekstiominaisuudet
- Excel-taulukon täyttävän VBA:n ohjelmointi
Tee tämä harjoitus askel askeleelta,
Vaihe 1 – Luo uusi työkirja
- avoin Microsoft kunnostautua
- Tallenna uusi työkirja nimellä VBA Arrays.xlsm
Vaihe 2 – Lisää komentopainike
Huomautus: Tässä osiossa oletetaan, että tunnet käyttöliittymän luomisprosessin Excelissä. Jos et ole tuttu, lue opetusohjelma VBA Excel Form Control & ActiveX Control. Se näyttää sinulle, kuinka käyttöliittymä luodaan
- Lisää komentopainike arkkiin
- Aseta nimiominaisuuden arvoksi cmdLoadBeverages
- Aseta kuvateksti-ominaisuuden arvoksi Load Beverages
GUI:si pitäisi nyt olla seuraava
Vaihe 3 – Tallenna tiedosto
- Napsauta Tallenna nimellä -painiketta
- Valitse Excel-makrokäyttöinen työkirja (*.xlsm) alla olevan kuvan mukaisesti
Vaihe 4 – Kirjoita koodi
Kirjoitamme nyt sovelluksemme koodin
- Napsauta hiiren kakkospainikkeella Lataa juomat -painiketta ja valitse Näytä koodi
- Lisää seuraava koodi cmdLoadBeveragen napsautustapahtumaan
Private Sub cmdLoadBeverages_Click() Dim Drinks(1 To 4) As String Drinks(1) = "Pepsi" Drinks(2) = "Coke" Drinks(3) = "Fanta" Drinks(4) = "Juice" Sheet1.Cells(1, 1).Value = "My Favorite Beverages" Sheet1.Cells(2, 1).Value = Drinks(1) Sheet1.Cells(3, 1).Value = Drinks(2) Sheet1.Cells(4, 1).Value = Drinks(3) Sheet1.Cells(5, 1).Value = Drinks(4) End Sub
TÄSSÄ,
Koodi | Toiminta |
---|---|
Dim Drinks (1 - 4) merkkijonona |
|
Juomat (1) = "Pepsi" |
|
Sheet1.Cells(1, 1).Arvo = "Suosikkijuomat." |
|
Taulukko1.Solut(2, 1).Arvo = Juomat(1) |
|
Testaamme sovellustamme
Valitse kehittäjä-välilehti ja varmista, että Suunnittelutila-painike on pois päältä. Ilmaisin on, että siinä on valkoinen tausta eikä värillinen (vihreä) tausta. (Katso kuva alla)
Napsauta Lataa juomat -painiketta
Saat seuraavat tulokset
Lataa Excel, joka sisältää yllä olevan koodin
Yhteenveto
- Taulukko on muuttuja, joka pystyy tallentamaan useamman kuin yhden arvon
- Excel VBA tukee staattisia ja dynaamisia taulukoita
- Taulukot tekevät ylläpidettävän koodin kirjoittamisesta helppoa verrattuna monien muuttujien ilmoittamiseen loogisesti toisiinsa liittyville tiedoille.