Mikä on VBA? Excelin makrokieli

Jos olet koskaan käyttänyt makroja Excelissä, olet käyttänyt Visual Basic for Applications (VBA) -ohjelmaa. VBA on ihmisen luettava (ja muokattava) ohjelmointikoodi, joka luodaan, kun tallennat makron. Kun suoritat makron, Excel lukee tämän koodin toistaaksesi toimintasi.

Seuraavassa on sarja usein kysyttyjä kysymyksiä VBA: sta, ja niihin on vastauksia sekä Excel -makrojen tulokkaille että kokeneille ohjelmoijille.

Mihin VBA: ta käytetään Excelissä?

VBA: ta käytetään makrojen kirjoittamiseen, jotka automatisoivat yksinkertaisia ​​ja monimutkaisia ​​tehtäviä Excelissä.

Microsoft Excelin käyttäjät toistavat usein saman tehtävän sarjan yhä uudelleen ja uudelleen. Joskus nämä ovat pieniä tehtäviä, kuten tietojen alijoukkojen kopioiminen ja liittäminen eri arkeille, ja joskus tehtävät ovat monimutkaisempia, kuten tietojen lataaminen verkkosivustolle. VBA: n avulla makrot voidaan ohjelmoida automatisoimaan tällaiset tehtävät, jolloin manuaaliset toiminnot muuttuvat yhdellä painikkeen napsautuksella.

Miten aloitan VBA: n Excelissä?

Helpoin tapa aloittaa makrojen käyttö on tallentaa ne Exceliin sisäänrakennetulla Makrotallentimella. Makrotallennin luo VBA-koodin, jonka voit lukea ja muokata, ja se antaa sinulle askeleen oppia omien makrojesi koodaamiseen tyhjästä.

Lisätietoja on artikkelissa ”Makron tallentaminen”.

Miten pääsen VBA -koodiin?

VBA -editori voidaan avata milloin tahansa painamalla ALT+F11 pikanäppäin. Täältä voit käyttää kaikkien avointen työkirjojen koodia.

Voit kaksoisnapsauttaa mitä tahansa työkirjaa, taulukkoa tai moduuliobjektia Hanke -ikkuna näyttää sen sisältämän VBA -koodin. Tallennetut makrot näkyvät aina moduuleissa, mihin yleensä haluat kirjoittaa myös omat makrot.

Lisätietoja makrojen muokkaamisesta on artikkelissa "Excel VBA -makrojen muokkaaminen".

Mitä VBA voi tehdä?

Ensinnäkin: jos voit tehdä jotain Excelissä, voit kirjoittaa saman VBA -koodin. Jos opit komennot (käyttämällä makrotallenninta tai online -resursseja), voit yhdistää useita toimintoja yhteen makroon.

Toinen: VBA: n avulla voit kirjoittaa käyttäjän määrittämiä funktioita laskentataulukon kaavoihin - kuten esimerkiksi "= SUM ()" -toiminto. Vaikka Excelissä on jo laaja valikoima toimintoja, voit lisätä sen VBA: n avulla, jos haluat löytää toimialallesi tai työpaikallesi tarkemman toiminnon.

Kolmas: VBA: n avulla voit lisätä makroihisi logiikkaa (If -lausekkeita) ja silmukoita (toista toimintoja). Tämä tarkoittaa sitä, että makro voi olla enemmän kuin toimintojen tallennus - se voi olla todellinen ohjelma, jossa on älykästä toistoa ja päätöksentekoa.

Neljäs: VBA: n avulla voit rakentaa käyttöliittymiä ja tarjota käyttäjille helpomman tavan olla vuorovaikutuksessa makrojesi kanssa. Nämä käyttöliittymät voivat olla yksinkertaisia ​​laskentataulukon painikkeita tai monimutkaisia ​​UserFormseja, joissa on monipuoliset ohjaimet, kuten TreeViews ja FlexGrids.

(Katso artikkeli ”Lisää painike ja määritä makro Excelissä” lähtökohtana.)

Viidenneksi, mutta ei lopulta: VBA: n avulla voit hyödyntää lähes kaikkia tietokoneesi tai Internetin resursseja ulkoisten DLL -kirjastojen avulla. Voit automatisoida paljon enemmän kuin Excel tällä tavalla, kuten käyttää verkkopalveluita ja tietokantoja, jäsentää XML -tiedostoja, toimia yhdessä muiden Microsoft Office -sovellusten kanssa ja tehdä paljon muuta.

Onko VB ja VBA sama asia?

VBA -kieli on sama kuin Visual Basic 6.0. Jos sinulla on kokemusta VB6 -koodin kirjoittamisesta, voit kirjoittaa VBA: n.

Excelin VB-editori on poistettu versio VB6-editorista, jolla on samanlaiset virheenkorjausominaisuudet ja komponentit, kuten "Projekti" ja "Ominaisuudet" -ikkunat. Lomakkeen editori on myös hyvin samankaltainen, vaikka sillä on joitain rajoituksia (kuten kyvyttömyys luoda ohjausryhmiä).

Vähemmän samanlainen kuin VBA on Visual Basic .NET. Vaikka näillä kielillä on monia samoja avainsanoja ja syntakseja, näiden kielten välinen koodi on vähemmän yhteentoimiva. Sinun ei tarvitse kirjoittaa paljon (jos mitään) uudelleen menettelyn siirtämiseksi VB6: sta VBA: han, mutta et voinut tehdä samaa VB.NET: stä.

Mikä on ero makron ja VBA: n välillä?

VBA on vain kieli, jolla makroja kirjoitetaan. Jos makro on tarina, VBA on kielioppi ja sanakirja, jolla se on kirjoitettu.

Mitä eroa on makro ja komentosarja?

Skriptit käyttävät rajoitettua Visual Basic -kielen osajoukkoa ja niitä käytetään eri tarkoituksiin.

Makrot tallennetaan Excel -työkirjatiedostoihin ja niitä voidaan käyttää vain Excelin sisältä. Niitä käytetään tyypillisesti erilaisten Excel -toimintojen automatisointiin ja työkirjoihin lisätoimintojen lisäämiseen.

Skriptit tallennetaan tekstitiedostoihin käyttämällä .VBS -laajennusta, ja ne voidaan ajaa Windowsin sisältä tai suorittaa muilla ohjelmilla. Sysadminit käyttävät komentosarjoja automatisoimaan tietyt järjestelmän tai verkon hallintatehtävät.

Mitä VBA -kehittäjä tekee?

Usein makroja luovat ihmiset eivät ole kehittäjiä - he ovat analyytikoita, kauppiaita, kirjanpitäjiä tai tiedemiehiä, jotka ovat saaneet ohjelmointikoulutusta ja käyttävät VBA: ta enemmän tapauskohtaisesti.

Ihmiset, jotka keskittyvät VBA -kehittämiseen, pyrkivät luomaan kehittyneempiä työkaluja - he luovat apuohjelmia, käyttöliittymiä lomakkeilla, interaktiivisia koontinäyttöjä, raporttien luontitoimintoja ja paljon muuta.

Miksi VBA on tärkeä?

VBA sisältyy vakiona kaikkiin Microsoft Office -sovelluksiin, mukaan lukien Excel. Excel on yksi maailman suosituimmista ohjelmista ja sitä voidaan käyttää monilla eri aloilla ja työpaikoilla, kaikilla on omat ainutlaatuiset työnkulut ja käyttötapaukset.

Kun automaatiota ei käytetä, lukemattomat työtunnit hukkaantuvat joka viikko tylsien, toistuvien tehtävien suorittamiseen ihmisen nopeudella. Automaatio VBA: n avulla voi suorittaa samat tehtävät tietokoneen salamannopealla vauhdilla, jolloin käyttäjät voivat keskittyä työnsä tärkeisiin osiin, olla tuottavampia - ja ehkä poistua toimistosta hieman aikaisemmin!

Onko VBA hyvä ohjelmointikieli?

VBA: ssa on tyypillisiä ohjelmointielementtejä, kuten muuttujia, matriiseja, toimintoja, päätöksiä ja silmukoita. Siinä on syntaksi, joka on helppo lukea, ja se voi hyödyntää paljon virtaa Windowsista ja muista palveluista.

Huonona puolena on, että virheiden käsittely ei ole kovin tyylikästä VBA: ssa. Vaikka muut kielet käyttävät "try-catch-végül" -koodilohkoja, VBA käyttää "On Error" -lausekkeita muuttaakseen makrojen käyttäytymistä virheen sattuessa.

Lisäksi VBA: ta ei voi käyttää itsenäisten ohjelmien, verkkosivustojen tai palvelujen luomiseen, eikä se voi olla yhteydessä uusimpiin ohjelmointirajapintoihin, kuten .NET -alustalle.

Onko VBA olio-suuntautunut?

VBA: lla on rajoitettu tuki joillekin objektipohjaisille käsitteille:

  • Kapselointi: VBA tukee tietojen piilottamista luokkien avulla
  • Polymorfismi: Implements -avainsanan avulla ohjelmoijat voivat käyttää muita luokkia rajapintoina

Tiukassa mielessä VBA ei kuitenkaan ole olio-suuntautunut. Siitä puuttuu erityisesti perinnön käsite, joka rajoittaa vakavasti mahdollisuutta laajentaa olemassa olevien tyyppien toimintoja.

Tulet auttaa kehittämään sivuston jakaminen sivu ystävillesi

wave wave wave wave wave