Kuinka käyttää Visual Basic for Application (VBA) -ohjelmaa Excelissä?

Visual Basic for Application ( VBA ) on ohjelmointikieli , jonka avulla voit laajentaa Excelin toimintoja ja automatisoida toistuvia tehtäviä. VBA:n avulla voit luoda makroja, lomakkeita, mukautettuja toimintoja ja interaktiivisia sovelluksia. Tässä artikkelissa opit VBA:n perusteet Excelissä ja kuinka sitä käytetään yksinkertaisten tai monimutkaisten toimintojen suorittamiseen.

Kuinka käyttää VBA:ta Excelissä?

GetPaidStock.com 64886528e3bbe

Jotta voit käyttää VBA:ta Excelissä, sinun on otettava käyttöön Kehittäjä-välilehti nauhassa. Voit tehdä tämän seuraavasti:

  • Napsauta Tiedosto-painiketta ja sitten Asetukset.
    tth img w10 app excel-tiedosto
  • Napsauta Excelin asetukset -ikkunassa Mukauta nauhaa.
    tth img w10 app excel-tiedosto henkilökohtainen valintanauha dev
  • Valitse päävälilehtien luettelosta Kehittäjä-ruutu ja napsauta sitten OK.

Sen jälkeen Kehittäjä-välilehti tulee näkyviin nauhaan. Tämä välilehti sisältää useita VBA:han liittyviä työkaluja, kuten Visual Basic -painikkeen, Tallenna makro -painikkeen tai Insert Control -painikkeen.

tth img w10 app excel dev
tth img w10 app excel dev vba

Visual Basic -painike avaa Visual Basic Editorin (VBE), jossa voit luoda ja muokata VBA-koodia. Tallenna makro -painike luo automaattisesti VBA-koodin, joka toistaa sovelluksessa tekemäsi toiminnot. Lisää ohjausobjekti -painikkeella voit lisätä laskentataulukkoon interaktiivisia elementtejä, kuten painikkeita, valintaruutuja tai avattavia luetteloita.

Kuinka kirjoittaa VBA-koodi Exceliin?

VBA-koodin kirjoittamiseen Excelissä on käytettävä Visual Basic Editoria (VBE). Avaa se napsauttamalla Visual Basic -painiketta nauhan Kehittäjä-välilehdellä.

VBE koostuu useista ikkunoista:

tth img w10 app excel dev vba 1 1
  • Projekti-ikkuna näyttää VBA-koodia sisältävien objektien hierarkkisen rakenteen. Jos sinulla on esimerkiksi työkirja nimeltä OmaTyökirja.xlsm, jossa on kaksi taulukkoa nimeltä Taulukko1 ja Taulukko2, näet Objektit Taulukko1 ja Taulukko2 sekä objektin nimeltä ThisWorkbook näkyvät kohdassa OmaTyökirja.xlsm.
    tth img w10 app excel dev vba -projektiikkuna
  • Ominaisuudet-ikkuna näyttää Projekti-ikkunassa valitun objektin ominaisuudet. Jos esimerkiksi valitset Sheet1-objektin, näet sen ominaisuudet, kuten sen nimen (Name), sen värin (Tab.Color), sen koodin (CodeName) jne.
    tth img w10 app excel dev vba -ominaisuusikkuna
  • Koodi-ikkunassa näkyy Projekti-ikkunassa valittuun objektiin liittyvä VBA-koodi. Jos esimerkiksi valitset Sheet1-objektin, näet VBA-koodin, joka suoritetaan, kun käytät Sheet1-laskentataulukkoa.
    tth img w10 app excel dev vba ikkunakoodi
  • Välitön ikkuna näyttää VBA-kooditulokset tai virheilmoitukset. Jos esimerkiksi käytät MsgBox-toimintoa viestin näyttämiseen käyttäjälle, näet viestin välittömässä ikkunassa.
    tth img w10 app excel dev vba -ikkuna

VBA-koodin kirjoittamiseksi sinun on noudatettava tiettyjä syntaksisääntöjä:

  • Jokaisen lauseen tulee päättyä rivinvaihtoon tai kaksoispisteeseen (:).
  • VBA-kielen avainsanat on kirjoitettava isoilla tai pienillä kirjaimilla, mutta ei objektien, ominaisuuksien tai menetelmien nimiä, jotka erottelevat isot ja pienet kirjaimet.
  • Kommentteja edeltää heittomerkki (') tai Rem, ja ne on kirjoitettava erilliselle riville tai lausunnon jälkeen.
  • Merkkijonojen ympärillä on oltava lainausmerkit (“).
  • Aritmeettiset operaattorit ovat +, -, *, / ja ^ (teho).
  • Loogiset operaattorit ovat And, Or, Not, Xor ja Eqv.
  • Vertailuoperaattorit ovat =, <>, <, <=, > ja >=.
  • Ennalta määritetyt vakiot ovat True, False, Null, Empty, Nothing ja vbNullString.

Tässä on esimerkki VBA-koodista, joka näyttää viestin käyttäjälle:

Sub Hello() ' Tämä on MsgBox-kommentti "Hei, olen Bing!" ' Näyttää End Sub -viestin 

Kuinka käyttää Excelin taulukkolaskentatoimintoja VBA:ssa?

Voit käyttää useimpia Excel-laskentataulukkofunktioita VBA-lausekkeissasi. Tätä varten sinun on käytettävä seuraavaa syntaksia:

Application.WorksheetFunction.FunctionName(argumentti1, argumentti2, ...)

Jos esimerkiksi haluat käyttää SUMMA-funktiota laskeaksesi arvojen summan alueella A1:A10, voit kirjoittaa:

Sub Sum() Dim result As Double ' Ilmoittaa muuttujan tyyppiä Double result = Application.WorksheetFunction.Sum(Range("A1:A10")) ' Liittää SUM-funktion tuloksen muuttujaan MsgBox result ' Näyttää tuloksen End Sub

Voit myös käyttää mukautettuja toimintoja, jotka luot itse VBA:ssa. Tätä varten sinun on käytettävä seuraavaa syntaksia:

Funktio FunctionName(argumentti1 Tyyppinä1, argumentti2 Tyyppinä2, ...) Paluutyyppinä ' Selitykset ja ohjeet FunctionName = lauseke ' Määrittää funktiolle palautettavan tuloksen Loppufunktio

Jos esimerkiksi haluat luoda funktion, joka laskee luvun neliön, voit kirjoittaa:

Funktio Neliö(numero As Double) Tupla ' Ilmoittaa funktion, joka ottaa luvun argumenttina ja palauttaa luvun Neliö = numero * numero ' Määrittää luvun neliön funktiolle Lopeta funktio

Voit sitten käyttää tätä funktiota VBA-lauseissasi tai Excel-kaavoissasi. Esimerkiksi :

Sub Test() Dim x As Double ' Ilmoittaa muuttujan, jonka tyyppi on Double x = 5 ' Asettaa arvon 5 muuttujalle MsgBox Square(x) ' Näyttää x:n neliön End Sub

Kuinka luoda makroja Excelissä?

Makro on joukko VBA-käskyjä, jotka suoritetaan kaikki kerralla. Voit luoda makroja automatisoidaksesi toistuvia tai monimutkaisia ​​tehtäviä Excelissä. Makroja voidaan luoda kahdella tavalla: tallentamalla ne tai kirjoittamalla ne.

Nauhoita makro

Makron tallentaminen edellyttää, että käytät Nauhoita makro -painiketta nauhan Kehittäjä-välilehdellä Excelissä suorittamiesi toimintojen tallentamiseen ja niiden muuntamiseen VBA-koodiksi. Tämä on yksinkertaisin ja nopein tapa luoda makro, mutta se voi tuottaa huonosti optimoitua tai redundanttia koodia.

Voit tallentaa makron seuraavasti:

  • Napsauta Tallenna makro -painiketta nauhan Kehittäjä-välilehdellä.
    tth img w10 app excel dev -tallennusmakro
  • Anna makrolle nimi Tallenna makro -valintaikkunassa, valitse pikanäppäin, jos haluat, valitse makron tallennuspaikka (aktiivinen työkirja, uusi työkirja tai henkilökohtainen työkirja) ja kirjoita kuvaus, jos haluat .
    tth img w10 app excel dev -tallennusmakro
  • Aloita tallennus napsauttamalla OK.
  • Suorita toiminnot, jotka haluat automatisoida Excelissä. Jos esimerkiksi haluat luoda makron, joka muotoilee taulukon, valitse taulukko, muotoile se, lajittele se aakkosjärjestykseen jne.
  • Lopeta tallennus napsauttamalla Lopeta tallennus -painiketta nauhan Kehittäjä-välilehdellä.

Voit sitten suorittaa makrosi valitsemallasi pikanäppäimellä, napsauttamalla Makrot-painiketta nauhan Kehittäjä-välilehdellä tai käyttämällä VBE:n Suorita-painiketta.

Kirjoita makro

Makron kirjoittamiseen kuuluu VBE:n käyttäminen automatisoitavia toimintoja vastaavan VBA-koodin kirjoittamiseen suoraan. Tämä on joustavin ja tehokkain menetelmä makron luomiseen, mutta se vaatii ohjelmointiosaamista.

Voit kirjoittaa makron seuraavasti:

  • Avaa VBE napsauttamalla Visual Basic -painiketta nauhan Kehittäjä-välilehdellä.
    tth img w10 app excel dev vba
  • Valitse Projekti-ikkunassa objekti, johon haluat tallentaa makrosi (aktiivinen työkirja, uusi työkirja tai henkilökohtainen työkirja).
  • Kirjoita Koodi-ikkunaan VBA-koodi, joka vastaa automatisoitavia toimintoja. Jos esimerkiksi haluat luoda makron, joka muotoilee taulukon, kirjoita seuraava koodi:
Sub FormatTable() ' Valitsee taulukon Range("A1:D10").Select ' Käyttää tyyliä taulukkoon Selection.Style = "Taulukko 1" ' Lajittelee taulukon aakkosjärjestykseen sarakkeen A ActiveWorkbook.Worksheets("Sheet1" ) mukaan. Sort.SortFields.Clear ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("A2:A10") _ , SortOn:=xlSortOnValues, Order:=xlNouseva, Withet Active.taibook. ("Sheet1").Lajittele .SetRange Range("A1:D10") .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End Sub

Voit sitten suorittaa makrosi käyttämällä VBE:n Suorita-painiketta tai määrittämällä sille pikanäppäimen tai säätimen.

tth img w10 app excel dev vba -testikoodi

UKK

Tässä on joitain usein kysyttyjä kysymyksiä VBA:n käyttämisestä Excelissä:

Mikä on VBA ja miksi sitä käytetään?

VBA on Visual Basicin versio, joka toimitetaan Microsoft Officen mukana. Se on olio-ohjelmointikieli , joka käyttää luonnollista kieltä lähellä olevaa syntaksia. VBA:n avulla voit käyttää ja käsitellä Excelin objekteja, ominaisuuksia ja menetelmiä koodin avulla. Voit siis hallita Exceliä hienommin ja tehokkaammin kuin graafisen käyttöliittymän kautta.

VBA:lla on useita etuja:

  • Voit automatisoida toistuvia tai tylsiä tehtäviä, kuten tietojen puhdistamisen, taulukoiden muotoilun, kaavioiden luomisen ja paljon muuta.
  • Voit mukauttaa Exceliä tarpeidesi mukaan lisäämällä ominaisuuksia, joita ohjelmistossa ei ole, tai muuttamalla sen toimintaa.
  • Voit olla vuorovaikutuksessa käyttäjän kanssa valintaikkunoiden, lomakkeiden tai mukautettujen viestien avulla.
  • Voit integroida Excelin muihin Office-sovelluksiin tai ulkoisiin tietolähteisiin, kuten Outlookiin, Wordiin, Accessiin, SQL Serveriin jne.

Kuinka korjata VBA-koodi Excelissä?

VBA-koodin virheenkorjaukseen Excelissä voit käyttää VBE-työkaluja, kuten keskeytyskohtia, askellusta, katseluikkunaa tai aluekohtaista ikkunaa. Näiden työkalujen avulla voit hallita koodin suorittamista, tarkistaa muuttujien arvot ja havaita virheitä.

Kuinka suojata VBA-koodi Excelissä?

Voit suojata VBA-koodia Excelissä lukitsemalla VBA-projektin salasanalla. Voit tehdä tämän seuraavasti:

  • Avaa VBE napsauttamalla Visual Basic -painiketta nauhan Kehittäjä-välilehdellä.
  • Napsauta Projekti-ikkunassa hiiren kakkospainikkeella VBA-projektin nimeä ja valitse VBA-projektin ominaisuudet.
  • Napsauta VBA-projektin ominaisuudet -valintaikkunassa Suojaus-välilehteä.
  • Valitse Lukitse projekti katselua varten -ruutu ja kirjoita salasana ja vahvista se.
  • Napsauta OK sulkeaksesi valintaikkunan.
  • Tallenna ja sulje työkirja.

Kuinka suorittaa makro avattaessa tai suljettaessa työkirjaa?

Jos haluat suorittaa makron, kun avaat tai suljet työkirjan, sinun on käytettävä Workbook_Open- tai Workbook_BeforeClose-tapahtumia. Voit tehdä tämän seuraavasti:

  • Avaa VBE napsauttamalla Visual Basic -painiketta nauhan Kehittäjä-välilehdellä.
  • Valitse Project-ikkunassa ThisWorkbook-objekti työkirjan nimen alta.
  • Valitse Koodi-ikkunassa vasemmassa yläkulmassa olevasta avattavasta Objekti-luettelosta Työkirja.
  • Valitse oikeassa yläkulmassa olevasta avattavasta Menettelyluettelosta Avaa tai Ennen sulkemista.
  • Kirjoita VBA-koodi, joka kutsuu suoritettavaa makroa. Esimerkiksi :
Private Sub Workbook_Open() ' Suorittaa Hello-makron avattaessa työkirjaa Hello End Sub Private Sub Workbook_BeforeClose(Cancel As Boolean) ' Suorittaa AuRevoir-makron, kun työkirja suljetaan AuRevoir End Sub

Kuinka luoda lomake Excelissä VBA: lla?

Luodaksesi lomakkeen Excelissä VBA:lla, sinun on käytettävä VBE:n lomakesuunnittelijaa. Voit tehdä tämän seuraavasti:

  • Avaa VBE napsauttamalla Visual Basic -painiketta nauhan Kehittäjä-välilehdellä.
  • Napsauta Project-ikkunassa hiiren kakkospainikkeella VBA-projektin nimeä ja valitse Lisää ja sitten UserForm.
  • Uusi UserForm-ikkuna avautuu. Voit lisätä siihen ohjaimia, kuten tarroja, tekstiruutuja, painikkeita jne. vetämällä ne työkalulaatikosta.
  • Voit muokata ohjaimien ominaisuuksia Ominaisuudet-ikkunassa tai kirjoittaa VBA-koodin käsittelemään niiden tapahtumia Koodi-ikkunassa.
  • Voit näyttää lomakkeen Näytä-menetelmällä. Esimerkiksi :
Sub ShowForm() ' Näyttää lomakkeen UserForm1 UserForm1.Show End Sub

Kuinka luoda mukautettu funktio Excelissä VBA: lla?

Jos haluat luoda mukautetun funktion Excelissä VBA:lla, sinun on käytettävä seuraavaa syntaksia:

Funktio FunctionName(argumentti1 Tyyppinä1, argumentti2 Tyyppinä2, ...) Paluutyyppinä ' Selitykset ja ohjeet FunctionName = lauseke ' Määrittää funktiolle palautettavan tuloksen Loppufunktio

Jos esimerkiksi haluat luoda funktion, joka laskee luvun neliön, voit kirjoittaa:

Funktio Neliö(numero As Double) Tupla ' Ilmoittaa funktion, joka ottaa luvun argumenttina ja palauttaa luvun Neliö = numero * numero ' Määrittää luvun neliön funktiolle Lopeta funktio

Voit sitten käyttää tätä funktiota VBA-lauseissasi tai Excel-kaavoissasi. Esimerkiksi :

Sub Test() Dim x As Double ' Ilmoittaa muuttujan, jonka tyyppi on Double x = 5 ' Asettaa arvon 5 muuttujalle MsgBox Square(x) ' Näyttää x:n neliön End Sub

Voit myös käyttää mukautettuja toimintoja, jotka luot itse VBA:ssa. Tätä varten sinun on käytettävä seuraavaa syntaksia:

Funktio FunctionName(argumentti1 Tyyppinä1, argumentti2 Tyyppinä2, ...) Paluutyyppinä ' Selitykset ja ohjeet FunctionName = lauseke ' Määrittää funktiolle palautettavan tuloksen Loppufunktio

Jos esimerkiksi haluat luoda funktion, joka laskee luvun neliön, voit kirjoittaa:

Funktio Neliö(numero As Double) Tupla ' Ilmoittaa funktion, joka ottaa luvun argumenttina ja palauttaa luvun Neliö = numero * numero ' Määrittää luvun neliön funktiolle Lopeta funktio

Voit sitten käyttää tätä funktiota VBA-lauseissasi tai Excel-kaavoissasi. Esimerkiksi :

Sub Test() Dim x As Double ' Ilmoittaa muuttujan, jonka tyyppi on Double x = 5 ' Asettaa arvon 5 muuttujalle MsgBox Square(x) ' Näyttää x:n neliön End Sub

Tai

=Neliö(A1) ' Laskee solun A1 arvon neliön

Johtopäätös

Opit tässä artikkelissa käyttämään Visual Basic for Application (VBA) -ohjelmaa Excelissä. Olet nähnyt, mitä VBA on ja miksi sitä käytetään, miten VBA:ta käytetään Excelissä, kuinka VBA-koodia kirjoitetaan Excelissä, kuinka käytetään Excelin laskentataulukkotoimintoja VBA:ssa, kuinka luodaan makroja Excelissä VBA:lla, miten luodaan lomakkeita Excel VBA:lla ja mukautettujen funktioiden luominen Excelissä VBA:n kanssa. VBA:lla luotavista mukautetuista funktioista on vähennyslasku Excelissä . Voit nyt käyttää VBA:n ohjelmointitehoa mukauttaaksesi ja automatisoidaksesi Exceliä tarpeen mukaan.

Edellinen artikkeli Kuinka oppia Python aloittelijatasolla?
Seuraava artikkeli Kuinka muodostaa yhteys Bouygues Telecom -postilaatikkoon?