- VBA Array Quick Sheet
- VBA Array -pikaesimerkkejä
- Array -edut? - Nopeus!
- Luo / julista matriisi (himmeä)
- Aseta Array -arvot
- Määritä alue taulukolle
- 2D / moniulotteiset taulukot
- Esimerkkejä moniulotteisista matriiseista
- Taulukon pituus / koko
- Kierrä matriisin läpi
- Muut Array -tehtävät
- Taulukkojen käyttäminen Access VBA: ssa
VBA: ssa an Array on yksi muuttuja, joka voi sisältää useita arvoja. Ajattele taulukkoa kuin solualue: jokainen solu voi tallentaa arvon. Taulukot voivat olla yksiulotteisia (ajattele yksittäistä saraketta), kaksiulotteisia (ajattele useita rivejä ja sarakkeita) tai moniulotteisia. Taulukon arvoihin pääsee käsiksi niiden sijainnin (indeksinumero) perusteella taulukossa.
VBA Array Quick Sheet
Taulukot
KuvausVBA -koodiLuodaDim arr (1 to 3) Varianttinaarr (1) = "yksi"
arr (2) = “kaksi”
arr (3) = “kolme”Luo ExcelistäDim arr (1 to 3) Varianttina
Himmennä solu alueena ja i kokonaislukuna
i = LBound (arr)
Jokaiselle alueen solulle ("A1: A3")
i = i + 1
arr (i) = solu.arvo
Seuraava soluLue kaikki kohteetDim i yhtä pitkä
I = LBound (arr) - UBound (arr)
MsgBox arr (i)
Seuraavaksi minäPoistaPoista saapArray merkkijonoonDim sName As String
sName = Liity (arr, ":")Suurenna kokoaReDim Preserve arr (0-100)Aseta arvoarr (1) = 22
VBA Array -pikaesimerkkejä
Tarkastellaan täydellistä esimerkkiä ennen kuin menemme yksityiskohtiin:
12345678910 | AlajoukkoEsimerkki ()Dim strNames (1-4) merkkijononastrNames (1) = "Shelly"strNames (2) = "Steve"strNames (3) = "Neema"strNames (4) = "Jose"msgbox strNames (3)End Sub |
Tässä olemme luoneet yksiulotteisen merkkijonon: strNames, jonka koko on neljä (mahtuu neljä arvoa), ja määritimme neljä arvoa. Viimeiseksi näytämme kolmannen arvon viestilaatikossa.
Tässä tapauksessa taulukon käytöstä on vain vähän hyötyä: tarvitaan vain yksi muuttujan ilmoitus neljän sijasta.
Katsotaan kuitenkin esimerkkiä, joka näyttää taulukon todellisen tehon:
12345678 | AlajoukkoEsimerkki2 ()Dim strNames (1 - 60000) merkkijononaDim niin kauanI = 1 - 60000strNames (i) = Solut (i, 1). ArvoSeuraavaksi minäEnd Sub |
Tässä olemme luoneet taulukon, johon mahtuu 60 000 arvoa, ja olemme täyttäneet taulukon nopeasti laskentataulukon sarakkeesta A.
Array -edut? - Nopeus!
Saatat ajatella Excel -laskentataulukoiden kaltaisia taulukkoja:
- Jokainen solu (tai taulukon kohde) voi sisältää oman arvon
- Jokaista solua (tai matriisin kohdetta) voidaan käyttää sen rivin ja sarakkeen sijainnin perusteella.
- Laskentataulukko Ex. solut (1,4). arvo = "Rivi 1, sarake 4"
- Array Ex. arrVar (1,4) = “Rivi 1, sarake 4”
Joten miksi vaivautua Arraysin kanssa? Miksi et vain lue ja kirjoita arvoja suoraan Excelin soluihin? Yksi sana: Nopeus!
Excel -soluihin lukeminen / kirjoittaminen on hidas prosessi. Työskentely Arraysin kanssa on paljon nopeampaa!
Luo / julista matriisi (himmeä)
Huomautus: Taulukoilla voi olla useita "ulottuvuuksia". Jotta asiat olisivat yksinkertaisia, aloitamme työskentelemällä vain yksiulotteisten matriisien kanssa. Myöhemmin opetusohjelmassa esittelemme sinulle moniulotteisia matriiseja.
Staattinen ryhmä
Staattiset taulukot ovat matriiseja, joiden kokoa ei voi muuttaa. Päinvastoin, Dynaamiset taulukot voi muuttaa kokoa. Ne ilmoitetaan hieman eri tavalla. Tarkastellaan ensin staattisia matriiseja.
Huomautus: Jos taulukon koko ei muutu, käytä staattista taulukkoa.
Staattisen taulukon muuttujan ilmoittaminen on hyvin samanlainen kuin tavallisen muuttujan ilmoittaminen, paitsi että sinun on määritettävä taulukon koko. Taulukon koon voi asettaa useilla eri tavoilla.
Voit nimenomaisesti ilmoittaa taulukon alku- ja loppukohdat:
123456789101112 | Sub StaticArray1 ()'Luo taulukon, jossa on sijainnit 1,2,3,4Dim arrDemo1 (1-4) merkkijonona'Luo taulukon sijainneilla 4,5,6,7Dim arrDemo2 (4-7) niin kauan'Luo taulukon sijainneilla 0,1,2,3Dim arrDemo3 (0 - 3) niin kauanEnd Sub |
Tai voit syöttää vain taulukon koon:
123456 | Sub StaticArray2 ()'Luo taulukon sijainneilla 0,1,2,3Dim arrDemo1 (3) merkkijononaEnd Sub |
Tärkeä! Huomaa, että oletusarvoisesti taulukot alkavat kohdasta 0. Joten Dim arrDemo1 (3) luo taulukon sijainneilla 0,1,2,3.
Voit ilmoittaa Vaihtoehtokanta 1 moduulin yläosassa niin, että taulukko alkaa sijainnista 1:
12345678 | Vaihtoehtokanta 1Sub StaticArray3 ()'Luo taulukon, jossa on sijainnit 1,2,3Dim arrDemo1 (3) merkkijononaEnd Sub |
Huomaan kuitenkin, että on paljon helpompaa (ja vähemmän sekavaa) ilmoittaa vain nimenomaisesti matriisien alku- ja loppukohdat.
Oletko kyllästynyt etsimään esimerkkejä VBA -koodista? Kokeile AutoMacroa!
Dynaaminen järjestelmä
Dynaamiset taulukot ovat matriiseja, joiden kokoa voidaan muuttaa (tai joiden kokoa ei tarvitse määrittää).
Dynaamisen taulukon voi julistaa kahdella tavalla.
Vaihtoehtoiset taulukot
Ensimmäinen tapa julistaa dynaaminen taulukko on asettaa taulukko tyypiksi Vaihtoehto.
1 | Dim arrVar () Varianttina |
Kanssa Vaihtoehto Array, sinun ei tarvitse määrittää taulukon kokoa. Koko säätyy automaattisesti. Muista vain, että taulukko alkaa paikasta 0 (ellet lisää optiopohjaa 1 moduulin yläosaan)
12345678910111213 | AlivaihtoehtoArray ()Dim arrVar () Varianttina'Määritä arvot (koko = 0,1,2,3)arrVar = Array (1, 2, 3, 4)'Muuta arvoja (koko = 0,1,2,3,4)arrVar = Array ("1a", "2a", "3a", "4a", "5a")'Lähtöpaikka 4 ("5a")MsgBox arrVar (4)End Sub |
Ei-vaihtelevat dynaamiset taulukot
Jos kyseessä on muunnelmaton taulukko, sinun on määritettävä taulukon koko ennen arvojen määrittämistä taulukolle. Taulukon luominen on kuitenkin hieman erilainen:
1234567 | Sub DynamicArray1 ()Dim arrDemo1 () merkkijonona'Muuttaa taulukon kokoa paikoilla 1,2,3,4ReDim arrDemo1 (1-4)End Sub |
Ensin ilmoitat taulukon, joka on samanlainen kuin staattinen taulukko, paitsi että jätät taulukon koon pois:
1 | Dim arrDemo1 () merkkijonona |
Nyt kun haluat asettaa taulukon koon, käytä ReDim komento taulukon koon muuttamiseksi:
12 | 'Muuttaa taulukon kokoa paikoilla 1,2,3,4ReDim arrDemo1 (1-4) |
ReDim muuttaa taulukon kokoa. Lue alta ero ReDimin ja ReDim Preserveen välillä.
ReDim vs. ReDim Preserve
Kun käytät ReDim komento poistat kaikki olemassa olevat arvot taulukosta. Sen sijaan voit käyttää ReDim Säilytä taulukon arvojen säilyttämiseksi:
12 | 'Muuttaa matriisin koot 1,2,3,4 (nykyisten arvojen säilyttäminen)ReDim Preserve arrDemo1 (1-4) |
Taulukoiden ilmoittaminen yksinkertaistettuna
Saatat tuntea olosi hämmentyneeksi, kun olet lukenut kaiken yllä olevan. Jotta asiat olisivat yksinkertaisia, työskentelemme lähinnä staattisten matriisien kanssa artikkelin loppuosassa.
Aseta Array -arvot
Taulukon arvojen asettaminen on erittäin helppoa.
Staattisen taulukon kanssa sinun on määritettävä taulukon jokainen sijainti yksi kerrallaan:
12345678 | AlajoukkoEsimerkki ()Dim strNames (1-4) merkkijononastrNames (1) = "Shelly"strNames (2) = "Steve"strNames (3) = "Neema"strNames (4) = "Jose"End Sub |
Varianttijoukon avulla voit määrittää koko taulukon yhdellä rivillä (käytännöllistä vain pienille matriiseille):
123456 | AlariviExample_1Line ()Dim strNames () VarianttinastrNames = Array ("Shelly", "Steve", "Neema", "Jose")End Sub |
Jos yrität määrittää arvon taulukon sijainnille, jota ei ole olemassa, näyttöön tulee Subscript Out of Range -virhe:
1 | strNames (5) = "Shannon" |
Alla olevassa "Määritä alue taulukolle" -osiossa näytämme, kuinka voit käyttää silmukkaa suurten arvojen nopeaan määrittämiseen matriiseille.
Hanki Array -arvo
Voit hakea taulukon arvot samalla tavalla. Alla olevassa esimerkissä kirjoitamme matriisiarvot soluihin:
1234 | Alue ("A1"). Arvo = strNames (1)Alue ("A2"). Arvo = strNames (2)Alue ("A3"). Arvo = strNames (3)Alue ("A4"). Arvo = strNames (4) |
VBA -ohjelmointi | Koodigeneraattori toimii sinulle!
Määritä alue taulukolle
Jos haluat määrittää alueen alueelle, voit käyttää silmukkaa:
12345678 | AlaalueToArray ()Dim strNames (1 - 60000) merkkijononaDim niin kauanI = 1 - 60000strNames (i) = Solut (i, 1). ArvoSeuraavaksi minäEnd Sub |
Tämä kiertää solujen A1: A60000 läpi ja määrittää soluarvot taulukolle.
Tulostusalue alueelle
Tai voit käyttää silmukkaa määrittämään taulukon alueelle:
123 | I = 1 - 60000Solut (i, 1). Arvo = strNames (i)Seuraavaksi minä |
Tämä tekee päinvastaisen: määritä matriisiarvot soluille A1: A60000
2D / moniulotteiset taulukot
Toistaiseksi olemme työskennelleet yksinomaan yksiulotteisten (1D) matriisien kanssa. Matriiseissa voi kuitenkin olla jopa 32 ulottuvuutta.
Ajattele 1D -matriisia, kuten yhtä Excel -solujen riviä tai saraketta, 2D -matriisia, kuten koko Excel -laskentataulukkoa, jossa on useita rivejä ja sarakkeita, ja 3D -taulukko on kuin koko työkirja, joka sisältää useita arkkeja, joista jokainen sisältää useita rivejä ja sarakkeita ( voisi myös ajatella 3D -matriisia Rubikin kuution kaltaisena).
Esimerkkejä moniulotteisista matriiseista
Näytämme nyt esimerkkejä eri kokoisten matriisien kanssa työskentelystä.
VBA -ohjelmointi | Koodigeneraattori toimii sinulle!
Esimerkki 1D -järjestelmästä
Tämä menettely yhdistää edelliset taulukkoesimerkit yhdeksi menettelyksi ja osoittaa, kuinka voit käyttää matriiseja käytännössä.
1234567891011121314 | AlariviEx_1d ()Dim strNames (1 - 60000) merkkijononaDim niin kauan'Määritä arvot taulukolleI = 1 - 60000strNames (i) = Solut (i, 1). ArvoSeuraavaksi minä'Tulostusjoukon arvot alueelleI = 1 - 60000Sheets ("Output"). Solut (i, 1) .Arvo = strNames (i)Seuraavaksi minäEnd Sub |
Esimerkki 2D -järjestelmästä
Tämä menettely sisältää esimerkin 2D -taulukosta:
123456789101112131415161718 | AlariviEx_2d ()Dim strNames (1 - 60000, 1 - 10) merkkijononaDim i Niin pitkä, j Niin pitkä'Määritä arvot taulukolleI = 1 - 60000Jos j = 1-10strNames (i, j) = Solut (i, j). ArvoSeuraava jSeuraavaksi minä'Tulostusjoukon arvot alueelleI = 1 - 60000Jos j = 1-10Sheets ("Output"). Solut (i, j). Arvo = strNames (i, j)Seuraava jSeuraavaksi minäEnd Sub |
Esimerkki 3D -matriisista
Tämä menettely sisältää esimerkin 3D -matriisista useiden arkkien käsittelemiseksi:
12345678910111213141516171819202122 | AlariviEx_3d ()Dim strNames (1 - 60000, 1 - 10, 1 - 3) merkkijononaDim i Niin pitkä, j Niin pitkä, k Niin pitkä'Määritä arvot taulukolleK = 1 - 3I = 1 - 60000Jos j = 1-10strNames (i, j, k) = Sheets ("Sheet" & k). Solut (i, j). ArvoSeuraava jSeuraavaksi minäSeuraava k'Tulostusjoukon arvot alueelleK = 1 - 3I = 1 - 60000Jos j = 1-10Sheets ("Output" & k). Solut (i, j). Arvo = strNames (i, j, k)Seuraava jSeuraavaksi minäSeuraava kEnd Sub |
Taulukon pituus / koko
Toistaiseksi olemme tutustuneet eri tyyppisiin matriiseihin ja opettaneet, miten taulukot ilmoitetaan ja taulukon arvot saadaan/asetetaan. Seuraavaksi keskitymme muihin tarvittaviin aiheisiin matriisien kanssa työskentelemiseksi.
VBA -ohjelmointi | Koodigeneraattori toimii sinulle!
UBound- ja LBound -toiminnot
Ensimmäinen vaihe matriisin pituuden / koon saamiseksi on UBound- ja LBound -toimintojen käyttäminen taulukon ylä- ja alarajojen saamiseksi:
123456 | Sub UBoundLBound ()Dim strNames (1-4) merkkijononaMsgBox UBound (strNames)MsgBox LBound (strNames)End Sub |
Vähentämällä nämä kaksi (ja lisäämällä 1) saat pituuden:
1 | GetArrLength = UBound (strNames) - LBound (strNames) + 1 |
Array Length -toiminto
Tässä on toiminto, jolla saadaan yksiulotteisen taulukon pituus:
1234567 | Julkinen toiminto GetArrLength (yhtä variaatio) niin kauanJos IsEmpty (a) SittenGetArrLength = 0MuuGetArrLength = UBound (a) - LBound (a) + 1Loppu JosLopeta toiminto |
Tarvitseeko laskea 2D -taulukon koko? Tutustu opetusohjelmaamme: Laske taulukon koko.
Kierrä matriisin läpi
On kaksi tapaa kiertää taulukko. Ensimmäinen silmukka kulkee matriisin lukukohtia vastaavien kokonaislukujen läpi. Jos tiedät taulukon koon, voit määrittää sen suoraan:
12345678910111213 | AlariviExample_Loop1 ()Dim strNames (1-4) merkkijononaDim niin kauanstrNames (1) = "Shelly"strNames (2) = "Steve"strNames (3) = "Neema"strNames (4) = "Jose"I = 1 - 4MsgBox strNames (i)Seuraavaksi minäEnd Sub |
Jos et kuitenkaan tiedä taulukon kokoa (jos taulukko on dynaaminen), voit käyttää LBound- ja UBound -toimintoja edellisestä osasta:
12345678910111213 | AlariviExample_Loop2 ()Dim strNames (1-4) merkkijononaDim niin kauanstrNames (1) = "Shelly"strNames (2) = "Steve"strNames (3) = "Neema"strNames (4) = "Jose"I = LBound (strNames) - UBound (strNames)MsgBox strNames (i)Seuraavaksi minäEnd Sub |
Jokaiselle Array -silmukalle
Toinen menetelmä on For For Loop. Tämä kiertää jokaisen taulukon kohteen läpi:
12345678910111213 | AlariviExample_Loop3 ()Dim strNames (1-4) merkkijononaHimmennettävä kohdestrNames (1) = "Shelly"strNames (2) = "Steve"strNames (3) = "Neema"strNames (4) = "Jose"Jokaiselle nimikkeelle strNamesMsgBox -kohdeSeuraava kohdeEnd Sub |
For For Array Loop toimii moniulotteisten matriisien kanssa yksiulotteisten matriisien lisäksi.
VBA -ohjelmointi | Koodigeneraattori toimii sinulle!
Kierrä 2D -järjestelmä läpi
Voit myös käyttää UBound- ja LBound-toimintoja selataksesi moniulotteisen taulukon läpi. Tässä esimerkissä kierrämme 2D -matriisin läpi. Huomaa, että UBound- ja LBound -toimintojen avulla voit määrittää, mitkä taulukon ulottuvuudet etsivät ylä- ja alarajat (1 ensimmäiselle ulottuvuudelle, 2 toiselle ulottuvuudelle).
1234567891011121314151617181920 | AlariviExample_Loop4 ()Dim strNames (1 - 4, 1 - 2) merkkijononaDim i Niin pitkä, j Niin pitkästrNames (1, 1) = "Shelly"strNames (2, 1) = "Steve"strNames (3, 1) = "Neema"strNames (4, 1) = "Jose"strNames (1, 2) = "Shelby"strNames (2, 2) = "Steven"strNames (3, 2) = "Nemo"strNames (4, 2) = "Jesse"J = LBound (strNames, 2) - UBound (strNames, 2)I = LBound (strNames, 1) - UBound (strNames, 1)MsgBox strNames (i, j)Seuraavaksi minäSeuraava jEnd Sub |
Muut Array -tehtävät
Clear Array
Tyhjennä koko matriisi käyttämällä Erase Statementia:
1 | Poista strNames |
Käyttöesimerkki:
12345678910 | AlajoukkoEsimerkki ()Dim strNames (1-4) merkkijononastrNames (1) = "Shelly"strNames (2) = "Steve"strNames (3) = "Neema"strNames (4) = "Jose"Poista strNamesEnd Sub |
Vaihtoehtoisesti voit myös muuttaa taulukon kokoa ja muuttaa sen kokoa tyhjentämällä osan taulukosta:
1 | ReDim strNames (1-2) |
Tämä muuttaa taulukon koon 2, poistamalla sijainnit 3 ja 4.
Kreivi Array
Voit laskea sijaintien lukumäärän taulukon jokaisessa ulottuvuudessa käyttämällä UBound- ja LBound -toimintoja (joista keskustellaan edellä).
Voit myös laskea syötettyjen (tai tiettyjä ehtoja täyttävien) kohteiden lukumäärän silmukan läpi.
Tämä esimerkki kiertää objektiryhmän läpi ja laskee taulukosta löydettyjen ei-tyhjien merkkijonojen määrän:
123456789101112131415 | AlariviLoopandCount ()Dim strNames (1-4) merkkijononaDim i Niin pitkä, n Niin kauanstrNames (1) = "Shelly"strNames (2) = "Steve"I = LBound (strNames) - UBound (strNames)Jos strNames (i) "" Sittenn = n + 1Loppu JosSeuraavaksi minäMsgBox n & "ei-tyhjiä arvoja löydetty."End Sub |
VBA -ohjelmointi | Koodigeneraattori toimii sinulle!
Poista kaksoiskappaleet
Jossain vaiheessa haluat ehkä poistaa kaksoiskappaleet taulukosta. Valitettavasti VBA: ssa ei ole sisäänrakennettua ominaisuutta tähän. Olemme kuitenkin kirjoittaneet toiminnon, joka poistaa kaksoiskappaleet taulukosta (se on liian pitkä sisällytettäväksi tähän opetusohjelmaan, mutta lue lisätietoja linkistä).
Suodattaa
VBA -suodatintoiminnon avulla voit suodattaa taulukon. Se tekee niin luomalla uuden taulukon, jossa on vain suodatetut arvot. Alla on nopea esimerkki, mutta muista lukea artikkelista lisää esimerkkejä eri tarpeisiin.
1234567891011121314 | Sub Filter_Match ()'Määrittele taulukkoDim strNames VariantstrNames = Array ("Steve Smith", "Shannon Smith", "Ryan Johnson")'SuodatinjärjestelmäDim strSubNames as VariantstrSubNames = Suodatin (strNames, "Smith")'Laske suodatettu taulukkoMsgBox "Löytynyt" & UBound (strSubNames) - LBound (strSubNames) + 1 & "names."End Sub |
IsArray -toiminto
Voit testata, onko muuttuja taulukko, käyttämällä IsArray -funktiota:
123456789101112 | Osa IsArrayEx ()'Luo taulukon, jossa on sijainnit 1,2,3Dim arrDemo1 (3) merkkijonona'Luo säännöllisen merkkijonomuuttujanDim str Kuten merkkijonoMsgBox IsArray (arrDemo1)MsgBox IsArray (str)End Sub |
Liity Arrayen
Voit nopeasti "liittyä" koko joukkoon yhdessä liittymistoiminnon kanssa:
123456789101112 | Osa Array_Join ()Dim strNames (1-4) merkkijononaDim joinNames merkkijononastrNames (1) = "Shelly"strNames (2) = "Steve"strNames (3) = "Neema"strNames (4) = "Jose"joinNames = Liity (strNames, ",")MsgBox joinNamesEnd Sub |
VBA -ohjelmointi | Koodigeneraattori toimii sinulle!
Jaa merkkijono taulukkoon
VBA -jakotoiminto jakaa merkkijonon taulukkoon, joka sisältää arvot alkuperäisestä merkkijonosta. Katsotaanpa esimerkkiä:
123456789 | Osa Array_Split ()Himmennetyt nimet () merkkijononaDim liittyiNimet merkkijonoksijoinNames = "Shelly, Steve, Nema, Jose"Nimet = Jaettu (joinNames, ",")MsgBox -nimet (1)End Sub |
Tässä jaamme tämän tekstijonon "Shelly, Steve, Nema, Jose" taulukkoon (koko 4) käyttämällä pilkkuerotinta (,).
Const Array
Taulukko ei voi on ilmoitettava vakiona VBA: ssa. Voit kuitenkin kiertää tämän luomalla funktion käytettäväksi taulukkona:
123456789 | 'Määrittele ConstantArrayToiminto ConstantArray ()ConstantArray = Array (4, 12, 21, 100, 5)Lopeta toiminto'Palauta ConstantArray -arvoSub RetrieveValues ()MsgBox ConstantArray (3)End Sub |
Kopioi taulukko
Ei ole sisäänrakennettua tapaa kopioida taulukkoa VBA: n avulla. Sen sijaan sinun on käytettävä silmukkaa arvojen määrittämiseen taulukosta toiseen.
12345678910111213141516171819 | Sub CopyArray ()Dim Arr1 (1-100) niin kauanDim Arr2 (1-100) niin kauanDim niin kauan'Luo taulukko 1I = 1 - 100Arr1 (i) = iSeuraavaksi minä'CopyArray1 taulukkoon2I = 1 - 100Arr2 (i) = Arr1 (i)Seuraavaksi minäMsgBox Arr2 (74)End Sub |
Transponoi
Ei ole sisäänrakennettua VBA-toimintoa, jonka avulla voit siirtää taulukon. Olemme kuitenkin kirjoittaneet toiminnon 2D -sarjan transponoimiseksi. Lue artikkeli saadaksesi lisätietoja.
VBA -ohjelmointi | Koodigeneraattori toimii sinulle!
Toiminnon paluujärjestelmä
VBA -kehittäjien yleinen kysymys on, kuinka luoda funktio, joka palauttaa taulukon. Uskon, että suurin osa ongelmista ratkaistaan käyttämällä Variant Arrayja. Olemme kirjoittaneet artikkelin aiheesta: VBA Function Return Array.
Taulukkojen käyttäminen Access VBA: ssa
Useimmat yllä olevista Array -esimerkeistä toimivat täsmälleen samalla tavalla Access VBA: ssa kuin Excel VBA: ssa. Yksi merkittävä ero on se, että kun haluat täyttää taulukon Access -tietojen avulla, sinun on kierrettävä RecordSet -objekti Range -objektin sijaan.
1234567891011121314151617181920212223 | AlaalueToArrayAccess ()Virhe Jatka seuraavaksiDim strNames () merkkijononaDim niin kauanDim iCount niin kauanDim dbs TietokannanaHimmennä ennätyksenäAseta dbs = CurrentDbAseta rst = dbs.OpenRecordset ("tblClients", dbOpenDynaset)Ensimmäisen kanssa.MoveLast.MoveFirstiCount = .RecordCountReDim strNames (1 iCountiin)I = 1 iCountillestrNames (i) = rst.Fields ("AsiakkaanNimi")SiirräSeuraavaSeuraavaksi minäLopetaensimmäinen SuljeAseta rst = ei mitäänAseta dbs = ei mitäänEnd Sub |
Array -opetusohjelmat | |
---|---|
Array Mega-opas | Joo |
Hanki taulukon koko | |
Clear Array | |
Suodatinjärjestelmä | |
Transponoi Array | |
Toiminnon paluujärjestelmä | |
Poista kaksoiskappaleet | |