Mikä on VBA-taulukko Excelissä ja kuinka ohjelmoida yksi
VBA on ollut osa Microsoft Office -pakettia useiden vuosien ajan. Vaikka siinä ei ole VB-sovelluksen kaikkia toimintoja ja tehoja, VBA tarjoaa Office -käyttäjille joustavuutta Office - tuotteiden integroimiseen ja niissä tekemäsi työn automatisointiin.
Yksi VBA(VBA) :n tehokkaimmista työkaluista on kyky ladata koko joukko tietoja yhteen muuttujaan, jota kutsutaan taulukoksi. Lataamalla tietoja tällä tavalla, voit käsitellä tai suorittaa laskelmia kyseiselle tietoalueelle monin eri tavoin.
Joten mikä on VBA - taulukko? Tässä artikkelissa vastaamme tähän kysymykseen ja näytämme, kuinka voit käyttää sitä omassa VBA-skriptissäsi(your own VBA script) .
Mikä on VBA-taulukko?
VBA -taulukon käyttäminen Excelissä on(Excel) hyvin yksinkertaista, mutta taulukoiden käsitteen ymmärtäminen voi olla hieman monimutkaista, jos et ole koskaan käyttänyt sitä.
Ajattele(Think) taulukkoa kuin laatikkoa, jonka sisällä on osia. Yksiulotteinen taulukko on laatikko, jossa on yksi rivi osia. Kaksiulotteinen taulukko on laatikko, jossa on kaksi riviä osia.
Voit laittaa tiedot tämän "laatikon" jokaiseen osioon missä tahansa järjestyksessä.
VBA -skriptin alussa sinun on määritettävä tämä "laatikko" määrittämällä VBA - taulukkosi. Joten luodaksesi taulukon, johon mahtuu yksi tietojoukko (yksiulotteinen taulukko), kirjoitat seuraavan rivin.
Dim arrMyArray(1 To 6) As String
Myöhemmin ohjelmassasi voit sijoittaa tietoja mihin tahansa tämän taulukon osioon viittaamalla sulkeiden sisällä olevaan osioon.
arrMyArray(1) = "Ryan Dube"
Voit luoda kaksiulotteisen taulukon käyttämällä seuraavaa riviä.
Dim arrMyArray(1 To 6,1 to 2) As Integer
Ensimmäinen numero edustaa riviä ja toinen on sarake. Joten yllä oleva taulukko voisi sisältää 6 rivin ja 2 sarakkeen alueen.
Voit ladata minkä tahansa tämän taulukon elementin tiedoilla seuraavasti.
arrMyArray(1,2) = 3
Tämä lataa 3:n soluun B1.
Taulukko voi sisältää minkä tahansa tyyppistä dataa tavallisena muuttujana, kuten merkkijonoja, loogisia arvoja, kokonaislukuja, kellukkeita ja paljon muuta.
Suluissa oleva luku voi myös olla muuttuja. Ohjelmoijat käyttävät yleensä For Loopia(Loop) laskeakseen taulukon kaikki osat ja ladatakseen laskentataulukon tietosoluja taulukkoon. Näet kuinka tämä tehdään myöhemmin tässä artikkelissa.
Kuinka ohjelmoida VBA-taulukko Excelissä
Katsotaanpa yksinkertaista ohjelmaa, jossa haluat ehkä ladata tietoja laskentataulukosta moniulotteiseen taulukkoon.
Katsotaanpa esimerkkinä tuotteen myyntilaskentataulukkoa, josta haluat vetää myyntiedustajan nimen, tuotteen ja kokonaismyynnin pois laskentataulukosta.
Huomaa, että VBA :ssa, kun viittaat riveihin tai sarakkeisiin, lasket rivit ja sarakkeet(rows and columns) alkaen vasemmasta yläkulmasta 1:stä. Rep-sarake on siis 3, kohdesarake on 4 ja sarakkeen kokonaismäärä on 7.
Jos haluat ladata nämä kolme saraketta kaikille 11 riville, sinun on kirjoitettava seuraava komentosarja.
Dim arrMyArray(1 To 11, 1 To 3) As String
Dim i As Integer, j As Integer
For i = 2 To 12
For j = 1 To 3
arrMyArray(i-1, j) = Cells(i, j).Value
Next j
Next i
Huomaat, että otsikkorivin ohittaminen edellyttää, että ensimmäisen For lookin rivin numero alkaa 2:sta 1:n sijaan. Tämä tarkoittaa, että sinun on vähennettävä 1 taulukon rivin arvosta, kun lataat solun arvoa. taulukkoon käyttämällä soluja(Cells) (i, j). Arvo.
Mihin VBA-taulukon komentosarja(Your VBA Array Script) lisätään
Jotta voit sijoittaa ohjelman VBA -komentosarjan Exceliin(Excel) , sinun on käytettävä VBA - editoria. Pääset tähän valitsemalla Kehittäjä(Developer) - valikon ja valitsemalla nauhan Ohjaimet(Controls) -osiosta Näytä koodi .(View Code)
Jos Kehittäjä(Developer) ei näy valikossa, sinun on lisättävä se. Voit tehdä tämän valitsemalla Tiedosto(File) ja asetukset(Options) avataksesi Excelin asetukset -ikkunan.
Muuta valintakomennot pudotusvalikosta Kaikki komennot(All Commands) . Valitse vasemmanpuoleisesta valikosta Kehittäjä ja valitse (Developer)Lisää(Add) - painike siirtääksesi sen oikeanpuoleiseen ruutuun. Ota se käyttöön valitsemalla valintaruutu ja lopeta valitsemalla OK .
Kun Koodieditori(Code Editor) - ikkuna avautuu, varmista, että taulukko, jossa tietosi ovat, on valittuna vasemmasta ruudusta. Valitse vasemmasta pudotusvalikosta Työtaulukko ja oikealta (Worksheet)Aktivoi(Activate) . Tämä luo uuden aliohjelman nimeltä Worksheet_Activate ().
Tämä toiminto suoritetaan aina, kun laskentataulukkotiedosto avataan. Liitä koodi tämän aliohjelman skriptiruutuun.
Tämä komentosarja käy läpi 12 riviä ja lataa edustajan nimen sarakkeesta 3, tuotteen sarakkeesta 4 ja kokonaismyynnistä sarakkeesta 7.
Kun molemmat For-silmukat ovat valmiit, kaksiulotteinen taulukko arrMyArray sisältää kaikki alkuperäisestä taulukosta määrittämäsi tiedot.
Taulukon manipulointi Excel VBA:ssa
Oletetaan, että haluat soveltaa 5 %:n myyntiveroa kaikkiin lopullisiin myyntihintoihin ja kirjoittaa sitten kaikki tiedot uudelle taulukolle.
Voit tehdä tämän lisäämällä toisen For-silmukan ensimmäisen jälkeen komennolla kirjoittaa tulokset uudelle taulukolle.
For k = 2 To 12
Sheets("Sheet2").Cells(k, 1).Value = arrMyArray(k - 1, 1)
Sheets("Sheet2").Cells(k, 2).Value = arrMyArray(k - 1, 2)
Sheets("Sheet2").Cells(k, 3).Value = arrMyArray(k - 1, 3)
Sheets("Sheet2").Cells(k, 4).Value = arrMyArray(k - 1, 3) * 0.05
Next k
Tämä "purkaa" koko taulukon taulukkoon2 ja lisärivillä(Sheet2) , joka sisältää summan kerrottuna 5 %:lla verosummalla.
Tuloksena oleva arkki näyttää tältä.
Kuten näet, VBA -taulukot Excelissä(Excel) ovat erittäin hyödyllisiä ja yhtä monipuolisia kuin mikä tahansa muu Excel-temppu(any other Excel trick) .
Yllä oleva esimerkki on hyvin yksinkertainen taulukon käyttö. Voit luoda paljon suurempia taulukoita ja suorittaa lajittelua, keskiarvoa tai monia muita toimintoja niihin tallentamiasi tietoja vastaan.
Jos haluat olla todella luova, voit jopa luoda kaksi taulukkoa , jotka sisältävät solualueen(containing a range of cells) kahdesta eri taulukosta, ja suorittaa laskelmia kunkin taulukon elementtien välillä.
Sovelluksia rajoittaa vain mielikuvituksesi.
Related posts
Kuinka poistaa tyhjiä rivejä Excelissä
Excelin Speak Cells -ominaisuuden käyttäminen
Kuinka lisätä Excel-laskentataulukko Word-dokumenttiin
Excelin mitä jos -analyysin käyttäminen
Kuinka korjata rivi Excelissä
Miksi sinun pitäisi käyttää nimettyjä alueita Excelissä?
Kuinka lajitella päivämäärän mukaan Excelissä
Kuinka lisätä CSV tai TSV Excel-laskentataulukkoon
Yksisarakkeen ja monisarakkeen tietojen peruslajittelu Excel-laskentataulukoissa
Excel-tiedoston jakaminen helppoa yhteistyötä varten
Solujen, sarakkeiden ja rivien yhdistäminen Excelissä
3 tapaa jakaa solu Excelissä
Kirjoita numerot nopeasti Wordissa ja Excelissä
2 tapaa käyttää Excelin transponointifunktiota
Kuinka laskea Z-pisteet Excelissä
Kuinka käyttää Flash-täyttöä Excelissä
Kuinka jäljittää riippuvia Excelissä
Excelin mitä jos -analyysitavoitteenhakutyökalun käyttäminen
Milloin käyttää Index-Matchia VLOOKUPin sijaan Excelissä
Kuinka luoda VBA-makro tai komentosarja Excelissä