Mikä on VBA-taulukko?
Matriisi määritellään muistipaikkana, joka pystyy tallentamaan useampaa kuin yhtä arvoa. Kaikkien arvojen on oltava samaa tietotyyppiä. Oletetaan, että haluat tallentaa suosikkijuomiesi luettelon yhteen muuttujaan, voit käyttää VBA-taulukkoa siihen.
Taulukon avulla voit viitata niihin liittyviin arvoihin samalla nimellä. Voit erottaa heidät hakemistosta tai alaindeksistä. Yksittäisiä arvoja kutsutaan Excel VBA -ryhmän elementeiksi. Ne ovat vierekkäisiä indeksistä 0 korkeimman indeksiarvon kautta.
Tässä opetusohjelmassa oletetaan, että käytät Microsoft Excel -versiota 2013. Tieto koskee edelleen myös muita Microsoft Excel -versioita.
Tässä VBA-ohjelmointioppaassa opit-
- Mitkä ovat matriisien edut?
- Taulukotyypit VBA: ssa
- Arrayn käyttäminen Excel VBA: ssa
- Testaamme sovellustamme
Mitkä ovat matriisien edut?
Seuraavassa on joitain VBA-matriisitoiminnon tarjoamista eduista
- Ryhmitä loogisesti liittyvät tiedot yhteen - oletetaan, että haluat tallentaa luettelon opiskelijoista. Voit käyttää yhtä matriisimuuttujaa, jolla on erilliset sijainnit oppilasluokille, esim. Kinder garden, peruskoulu, lukio, lukio jne.
- Taulukot helpottavat ylläpidettävän koodin kirjoittamista. Samoille loogisesti liittyville tiedoille se antaa sinun määrittää yhden muuttujan sen sijaan, että määritettäisiin useampi kuin yksi muuttuja.
- Parempi suorituskyky - kun taulukko on määritetty, tietoja on nopeampi hakea, lajitella ja muokata.
Taulukotyypit VBA: ssa
VBA tukee kahden tyyppisiä taulukoita:
- Staattinen - Tämän tyyppisillä matriiseilla 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 tahojen kanssa, kuten viikon päivien lukumäärä, sukupuoli jne.
Esimerkki : Dim ArrayMonth (12) merkkijonona
- Dynaaminen - Tämän tyyppisillä matriiseilla ei ole kiinteää ennalta määritettyä määrää elementtejä, jotka voidaan tallentaa. Nämä ovat hyödyllisiä työskenneltäessä entiteettien kanssa, joita et voi määrittää ennalta.
Esimerkiksi : Dim ArrayMonth () Varianttina
Syntaksi taulukoiden ilmoittamiseksi
Staattiset taulukot
STATIC- taulukoiden ilmoittamisen syntaksit ovat seuraavat:
Dim arrayName (n) as datatype
TÄSSÄ,
Koodi | Toiminta |
Dim arrayName (n) tietotyyppi |
|
Dynaamiset taulukot
Syntaksi DYNAMIC- taulukoiden ilmoittamiseksi on seuraava:
Dim arrayName() as datatypeReDim arrayName(4)
TÄSSÄ,
Koodi | Toiminta |
Dim arrayName () -tietotyyppi |
|
ReDim arrayName (4) |
|
Taulukon mitat
Matriisi voi olla yksi ulottuvuus, kaksi ulottuvuutta tai moniulotteinen.
- Yksi ulottuvuus : Tässä dimensiossa taulukko käyttää vain yhtä hakemistoa. Esimerkiksi joukko ihmisiä jokaisessa iässä.
- Kaksi ulottuvuutta : Tässä dimensiossa taulukko käyttää kahta hakemistoa. Esimerkiksi jokaisessa luokassa on useita opiskelijoita. Se vaatii luokkien lukumäärän ja opiskelijoiden määrän kussakin luokassa
- Moniulotteisuus : Tässä dimensiossa taulukko käyttää enemmän kuin kahta hakemistoa. Esimerkiksi lämpötilat päivällä. (30, 40, 20).
Arrayn käyttäminen Excel VBA: ssa
Luomme yksinkertaisen sovelluksen. Tämä sovellus täyttää Excel-taulukon tietoja taulukon muuttujasta. Tässä VBA-taulukon esimerkissä aiomme tehdä seuraavia asioita.
- Luo uusi Microsoft Excel -työkirja ja tallenna se Excel Macro-Enable Workbook (* .xlsm)
- Lisää komentopainike työkirjaan
- Aseta komentopainikkeen nimi ja tekstitysominaisuudet
- Excel-taulukon täyttävän VBA: n ohjelmointi
Anna tämän harjoituksen askel askeleelta,
Vaihe 1 - Luo uusi työkirja
- Avaa Microsoft Excel
- Tallenna uusi työkirja nimellä VBA Arrays.xlsm
Vaihe 2 - Lisää komentopainike
Huomaa: Tässä osassa oletetaan, että olet perehtynyt käyttöliittymän luomiseen Excelissä. Jos et ole perehtynyt, lue opetusohjelma VBA Excel Form Control & ActiveX Control. Se näyttää kuinka luoda käyttöliittymä
- Lisää komentopainike taulukkoon
- Aseta nimiominaisuudeksi cmdLoadBeverages
- Aseta tekstitysominaisuudeksi Lataa juomat
GUI: n pitäisi nyt olla seuraava
Vaihe 3 - Tallenna tiedosto
- Napsauta Tallenna nimellä -painiketta
- Valitse Excelin 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äkymäkoodi
- Lisää seuraava koodi cmdLoadBeverages-sovelluksen napsautustapahtumaan
Private Sub cmdLoadBeverages_Click()Dim Drinks(1 To 4) As StringDrinks(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 |
Hämärät juomat (1–4) merkkijonoina |
|
Juomat (1) = "Pepsi" |
|
Sheet1.Cells (1, 1) .Value = "Suosikkijuomani." |
|
Sheet1.Cells (2, 1). Arvo = juomat (1) |
|
Testaamme sovellustamme
Valitse kehittäjä-välilehti ja varmista, että Suunnittelutila-painike on pois päältä. Ilmaisin on, että sillä on valkoinen tausta eikä värillinen (vihertävä) tausta. (Katso alla oleva kuva)
Napsauta Lataa juomat -painiketta
Saat seuraavat tulokset
Lataa yllä oleva koodi sisältävä Excel
Lataa yllä oleva Excel-koodi
Yhteenveto
- Matriisi on muuttuja, joka pystyy tallentamaan useampaa kuin yhtä arvoa
- Excel VBA tukee staattisia ja dynaamisia taulukoita
- Matriisien avulla on helppo kirjoittaa ylläpidettävää koodia verrattuna siihen, että ilmoitetaan paljon muuttujia loogisesti liittyville tiedoille.