Aloittelijan opetusohjelma VBA -makrojen kirjoittamisesta Excelissä (ja miksi sinun pitäisi oppia)

Aloittelijan opetusohjelma VBA -makrojen kirjoittamisesta Excelissä (ja miksi sinun pitäisi oppia)

Excel -makrot voivat säästää paljon aikaa automatisoi usein käyttämiäsi Excel -prosesseja . Mutta makrot ovat itse asiassa melko rajallisia. Tallennustyökalulla on helppo erehtyä, ja tallennusprosessi on hankala.





VBA: n käyttäminen makrojen luomiseen antaa sinulle paljon enemmän tehoa. Voit kertoa Excelille tarkalleen, mitä tehdä ja miten se tehdään. Saat myös käyttöösi paljon muita toimintoja ja ominaisuuksia. Jos käytät Exceliä säännöllisesti, kannattaa oppia luomaan VBA -makroja.





Aloitamme perusasioista.



Mikä on VBA?

VBA on Visual Basic for Applications , ohjelmointikieli, jota voit käyttää monissa Microsoft -sovelluksissa. Visual Basic on ohjelmointikieli, ja VBA on sen sovelluskohtainen versio. (Microsoft lopetti Visual Basicin vuonna 2008, mutta VBA on edelleen vahva).

Onneksi ei-ohjelmoijille VBA on hyvin yksinkertainen, ja sen muokkauskäyttöliittymä tarjoaa paljon apua. Monet käyttämistäsi komennoista auttavat sinua saamaan komentosarjasi toimimaan nopeasti.



Silti VBA: han tottuu.

VBA -makrojen edut Excelissä

Jos VBA on vaikeampi kuin makron tallentaminen, miksi käytät sitä? Lyhyt vastaus on, että saat paljon enemmän voimaa VBA -makroista.





Sen sijaan, että napsautat laskentataulukkoa ja tallennat näitä napsautuksia, voit käyttää kaikkia Excelin toimintoja ja ominaisuuksia. Sinun tarvitsee vain osata käyttää niitä.

kuinka tasoittaa reunat Photoshopissa

Ja kun olet viihtynyt paremmin VBA: n kanssa, voit tehdä kaikki asiat, joita voit tehdä tavallisessa makrossa, paljon lyhyemmässä ajassa. Tulokset ovat myös ennustettavissa, kun kerrot Excelille tarkalleen mitä tehdä. Epäselvyyttä ei ole ollenkaan.





Kun olet luonut VBA -makron, se on helppo tallentaa ja jakaa, jotta muut voivat hyödyntää sitä. Tämä on erityisen hyödyllistä, kun työskentelet monien ihmisten kanssa, joiden on tehtävä samoja asioita Excelissä.

Katsotaanpa yksinkertaista VBA -makroa nähdäksesi kuinka se toimii.

Esimerkki VBA -makrosta Excelissä

Katsotaanpa yksinkertaista makroa. Laskentataulukko sisältää työntekijöiden nimet, myymälän numeron, jossa työntekijät työskentelevät, ja heidän neljännesvuosittaiset myyntinsä.

Tämä makro lisää jokaisen myymälän neljännesvuosittaisen myynnin ja kirjoittaa nämä summat laskentataulukon soluihin (jos et ole varma, miten pääset VBA -valintaikkunaan, tutustu VBA -esittelymme täällä ):

Sub StoreSales()
Dim Sum1 As Currency
Dim Sum2 As Currency
Dim Sum3 As Currency
Dim Sum4 As Currency
For Each Cell In Range('C2:C51')
Cell.Activate
If IsEmpty(Cell) Then Exit For
If ActiveCell.Offset(0, -1) = 1 Then
Sum1 = Sum1 + Cell.Value
ElseIf ActiveCell.Offset(0, -1) = 2 Then
Sum2 = Sum2 + Cell.Value
ElseIf ActiveCell.Offset(0, -1) = 3 Then
Sum3 = Sum3 + Cell.Value
ElseIf ActiveCell.Offset(0, -1) = 4 Then
Sum4 = Sum4 + Cell.Value
End If
Next Cell

Range('F2').Value = Sum1
Range('F3').Value = Sum2
Range('F4').Value = Sum3
Range('F5').Value = Sum4

End Sub

Tämä saattaa näyttää pitkältä ja monimutkaiselta, mutta jaamme sen osiin, jotta näet yksittäiset elementit ja opit hieman VBA: n perusteista.

Alaosan ilmoittaminen

Moduulin alussa on Sub StoreSales (). Tämä määrittelee uuden aliosan nimeltä StoreSales.

Voit myös määrittää funktioita --- ero on siinä, että funktiot voivat palauttaa arvot, ja sub-tiedostot eivät (jos olet tutustunut muihin ohjelmointikieliin, alit vastaavat menetelmiä). Tässä tapauksessa meidän ei tarvitse palauttaa arvoa, joten käytämme alaosaa.

Moduulin lopussa on End Sub, joka kertoo Excelille, että olemme valmiit tämän VBA -makron kanssa.

Muuttujien ilmoittaminen

Skriptimme ensimmäiset koodirivit alkavat Dim. Dim on VBA: n komento muuttujan ilmoittamiseen.

Joten Dim Sum1 luo uuden muuttujan nimeltä Sum1. Meidän on kuitenkin kerrottava Excelille, millainen muuttuja tämä on. Meidän on valittava tietotyyppi. VBA: ssa on monia erilaisia ​​tietotyyppejä --- löydät täydellinen luettelo Microsoftin ohjeasiakirjoista .

Koska VBA -makromme käsittelee valuuttoja, käytämme valuutta -tietotyyppiä.

Lause 'Dim Sum1 Valuutana' käskee Excelin luomaan uuden valuuttamuuttujan Sum1. Jokaisessa ilmoittamassasi muuttujassa on oltava As -lause, joka kertoo Excelille sen tyypin.

For Loopin aloittaminen

Silmukat ovat tehokkaimpia asioita, joita voit luoda millä tahansa ohjelmointikielellä. Jos et tunne silmukoita, tutustu tähän Do-While-silmukoiden selitykseen. Tässä esimerkissä käytämme For -silmukkaa, joka on myös käsitelty artikkelissa.

Silmukka näyttää tältä:

For Each Cell in Range('C2:C51')
[a bunch of stuff]
Next Cell

Tämä käskee Excelin iteroimaan määrittämämme alueen solujen läpi. Olemme käyttäneet a Alueobjekti , joka on erityinen VBA -objektityyppi. Kun käytämme sitä tällä tavalla --- Range ('C2: C51') --- se kertoo Excelille, että olemme kiinnostuneita näistä 50 solusta.

'Jokaiselle' kertoo Excelille, että aiomme tehdä jotain kunkin alueen solun kanssa. Seuraava solu tulee kaiken haluamamme jälkeen ja käskee Excelin aloittamaan silmukan alusta (alkaen seuraavasta solusta).

Meillä on myös tämä lausunto: 'Jos IsEmpty (solu) niin lopeta.'

Voitko arvata mitä se tekee?

Huomautus: Tarkkaan ottaen, Vaikka silmukka olisi voinut olla parempi valinta . Opetuksen vuoksi päätin kuitenkin käyttää For -silmukkaa poistumalla.

sovelluksia, jotka opettavat sinulle piirtämistä

Jos-sitten-muu lausunnot

Tämän makron ydin on If-then-Else -lausekkeissa. Tässä on ehdollisten lausekkeiden sarja:

If ActiveCell.Offset(0, -1) = 1 Then
Sum1 = Sum1 + Cell.Value
ElseIf ActiveCell.Offset(0, -1) = 2 Then
Sum2 = Sum2 + Cell.Value
ElseIf ActiveCell.Offset(0, -1) = 3 Then
Sum3 = Sum3 + Cell.Value
ElseIf ActiveCell.Offset(0, -1) = 4 Then
Sum4 = Sum4 + Cell.Value
End If

Suurimmaksi osaksi voit todennäköisesti arvata, mitä nämä väitteet tekevät. Et ehkä tunne ActiveCell.Offsetia. 'ActiveCell.Offset (0, -1)' käskee Excelin katsomaan solua, joka on yhden sarakkeen päässä aktiivisesta solusta.

Meidän tapauksessamme tämä kertoo Excelille, että se tutkii myymälänumerosarakkeen. Jos Excel löytää tässä sarakkeessa 1, se ottaa aktiivisen solun sisällön ja lisää sen Sum1: een. Jos se löytää 2, se lisää aktiivisen solun sisällön Sum2: een. Ja niin edelleen.

Excel käy läpi kaikki nämä lausunnot järjestyksessä. Jos ehdollinen lausunto on tyytyväinen, se täydentää Sitten -lauseen. Jos ei, se siirtyy seuraavaan ElseIfiin. Jos se päättyy loppuun eikä mikään ehdoista täyty, se ei ryhdy toimiin.

Silmukan ja ehtojen yhdistelmä ajaa tämän makron. Silmukka käskee Excelin käymään läpi kaikki valitun solun, ja ehdolliset kertovat sille, mitä tehdä kyseiselle solulle.

Solujen arvojen kirjoittaminen

Lopuksi saamme kirjoittaa laskelmien tulokset soluihin. Tässä ovat rivit, joita käytämme tähän:

Range('F2').Value = Sum1
Range('F3').Value = Sum2
Range('F4').Value = Sum3
Range('F5').Value = Sum4

Kun käytetään arvoa.

Ja siinä se! Kerromme Excelille, että olemme lopettaneet tämän alikirjoituksen kirjoittamisen lopetusosalla ja VBA -makro on valmis.

Kun suoritamme makron Makrot -painiketta Kehittäjä välilehti, saamme summamme:

VBA: n rakennuspalikoiden yhdistäminen Excelissä

Kun tarkastelet ensin yllä olevaa VBA -makroa, se näyttää melko monimutkaiselta. Mutta kun se on hajotettu sen osiin, logiikka tulee selväksi. Kuten mikä tahansa skriptikieli, VBA: n syntaksiin totuttelu vie aikaa.

Mutta harjoittelemalla voit rakentaa VBA -sanastoasi ja pystyä kirjoittamaan makroja nopeammin, tarkemmin ja paljon tehokkaammin kuin voisit koskaan tallentaa niitä.

Kun jää jumiin, Google -haun suorittaminen on nopea tapa saada vastaus VBA -kysymyksiin. Ja Microsoftin Excel VBA -viite voi olla hyödyllistä, jos olet valmis kaivamaan sen läpi saadaksesi teknisen vastauksen.

Kun olet perehtynyt perusasioihin, voit aloittaa VBA: n käytön esimerkiksi sähköpostien lähettäminen Excelistä , Outlook -tehtävien vieminen ja tietokoneen tietojen näyttäminen.

os x: tä ei voitu asentaa tietokoneellesi
Jaa Jaa Tweet Sähköposti Tästä syystä FBI antoi varoituksen Hive Ransomware -ohjelmasta

FBI antoi varoituksen erityisen ikävästä ransomware -kannasta. Tästä syystä sinun on oltava erityisen varovainen Hive -lunnasohjelmista.

Lue seuraava
Liittyvät aiheet
  • Tuottavuus
  • Laskentataulukko
  • Microsoft Excel
  • Microsoft Office 2016
  • Makrot
  • Koodausoppaat
Kirjailijasta Sitten Albright(506 artikkelia julkaistu)

Dann on sisältöstrategia- ja markkinointikonsultti, joka auttaa yrityksiä luomaan kysyntää ja liidejä. Hän kirjoittaa myös blogia strategiasta ja sisältömarkkinoinnista osoitteessa dannalbright.com.

Lisää Dann Albrightilta

tilaa uutiskirjeemme

Liity uutiskirjeeseemme saadaksesi teknisiä vinkkejä, arvosteluja, ilmaisia ​​e -kirjoja ja ainutlaatuisia tarjouksia!

Klikkaa tästä tilataksesi