Vaikka Excelissä on jo satoja sisäänrakennettuja toimintoja, kuten SUM, VLOOKUP, LEFT ja niin edelleen, käytettävissä olevat sisäänrakennetut toiminnot eivät yleensä riitä melko monimutkaisten tehtävien suorittamiseen. Älä kuitenkaan huolestu, koska sinun tarvitsee vain luoda tarvittavat toiminnot itse.
Vaihe
Vaihe 1. Luo uusi työkirja tai avaa työkirja, jonka haluat käsitellä käyttäjän määrittämillä toiminnoilla (UDF)
Vaihe 2. Avaa Visual Basic Editor Microsoft Excelissä Työkalut-> Makro-> Visual Basic Editor (tai paina pikanäppäintä Alt+F11)
Vaihe 3. Napsauta Moduuli -painiketta lisätäksesi uuden moduulin laskentataulukkoosi
Voit luoda UDF -työkirjan lisäämättä uutta moduulia, mutta toiminto ei toimi muissa saman työkirjan laskentataulukoissa.
Vaihe 4. Luo toiminnosi "pää" tai "prototyyppi"
Toiminnon prototyypin on noudatettava seuraavaa rakennetta:
julkinen toiminto "Toiminnon nimi" (parametri1 Tyypinä1, parametri2 Tyypinä2) Tulostyypinä.
Prototyypeillä voi olla mahdollisimman monta toimintoa, ja niiden tyypit voivat olla kaikki perustiedot tai Excel -objektityypit alueen muodossa. Voit ajatella parametreja "operaattoreina" (operaattoreina), joihin toiminto toimii. Jos esimerkiksi kirjoitat SIN (45) 45 asteen sinin laskemiseksi, luku 45 otetaan parametriksi. Sitten funktiokoodi käyttää näitä arvoja laskelmien suorittamiseen ja tulosten näyttämiseen.
Vaihe 5. Lisää toimintokoodi varmistaaksesi, että: 1) käytät parametrin antamaa arvoa; 2) siirtää tulos funktion nimeen; ja 3) sulje toiminto lauseella "lopetusfunktio"Ohjelmointi VBA: ssa tai millä tahansa muulla kielellä oppiminen vie paljon aikaa ja yksityiskohtaisia ohjeita. Onneksi näissä toiminnoissa on yleensä pieniä koodilohkoja, eivätkä ne juurikaan käytä ohjelmointikielen ominaisuuksia. Tässä on joitain VBA -kielen elementtejä, joita voidaan käyttää:
- If (jos) -lohko, jonka avulla voit suorittaa osan koodista vain, jos ehto täyttyy. Esimerkiksi:
- . Voit jättää Else -avainsanan pois koodin toisen osan kanssa, koska se on valinnainen.
- Tee (tee) -lohko, joka suorittaa osan Vaikka- tai kunnes -koodista, kun ehto täyttyy. Esimerkiksi:
- . Huomaa myös toinen rivi, joka "ilmoittaa" muuttujan. Voit lisätä muuttujia koodiin myöhempää käyttöä varten. Muuttujat toimivat väliaikaisina arvoina koodissa. Lopuksi, harkitse toimintoilmoitusta BOOLEAN, joka on tietotyyppi, joka sallii vain TOSI- tai EPÄTOSI -arvot. Tämä alkulukujen määritysmenetelmä ei ole kaukana optimaalisesta, mutta koodi on kirjoitettu siten, että se on helppo lukea.
- Lohkolle (to), joka suorittaa tietyn määrän koodia. Esimerkiksi:
- Vakioarvo, joka kirjoitetaan suoraan solukaavaan. Tässä tapauksessa teksti (merkkijono) on lainattava.
- Esimerkiksi soluviittaukset B6 tai vaihteluväli A1: C3 (parametrin on oltava tietotyyppi "Range")
-
Toinen toiminto, joka sisältyy toimintoosi (toiminto voidaan liittää myös toiseen toimintoon), esimerkiksi: = Factorial (MAX (D6: D8))
Vaihe 7. Varmista, että tulokset ovat oikein
Käytä sitä useita kertoja varmistaaksesi, että toiminto pystyy käsittelemään erilaisia parametriarvoja oikein:
Vinkkejä
- Kun kirjoitat koodilohkoja ohjausrakenteisiin, kuten If, For, Do jne., Varmista, että sisennät koodin (lisää vasemman rivin reunan hieman sisään) painamalla välilyöntiä useita kertoja tai sarkainta. Tämä helpottaa koodin ymmärtämistä ja virheiden löytämistä. Lisäksi toiminnallisuuden lisääminen on helpompaa.
- Jos et tiedä kuinka kirjoittaa toimintojen koodia, lue artikkeli Yksinkertaisen makron kirjoittaminen Microsoft Excelissä.
- Joskus funktiot eivät tarvitse kaikkia parametreja tuloksen laskemiseen. Tässä tapauksessa voit käyttää valinnaista avainsanaa ennen parametrin nimeä funktion otsikossa. Voit käyttää koodin IsMissing (parametrin_nimi) -funktiota määrittääksesi, onko parametrille määritetty arvo vai ei.
- Käytä käyttämättömiä nimiä Excelin funktioina, jotta mitään toimintoja ei korvata ja poisteta.
- Excelissä on monia sisäänrakennettuja toimintoja, ja useimmat laskelmat voidaan suorittaa käyttämällä näitä sisäänrakennettuja toimintoja joko yksittäin tai kaikki kerralla. Muista tutustua käytettävissä olevien toimintojen luetteloon ennen kuin aloitat itse koodauksen. Suoritus voidaan suorittaa nopeammin, jos käytät sisäänrakennettuja toimintoja.
Varoitus
- Turvallisuussyistä monet ihmiset poistavat makrot käytöstä. Muista ilmoittaa työkirjan vastaanottajille, että lähetetyssä työkirjassa on makrot ja että nämä makrot eivät vahingoita heidän tietokoneitaan.
- Tässä artikkelissa käytetty toiminto ei ole paras tapa ratkaista siihen liittyvä ongelma. Esimerkkiä käytetään selittämään kielenhallintarakenteiden käyttöä.
- VBA: lla, kuten muilla kielillä, on useita muita ohjausrakenteita Do, If ja For lisäksi. Tässä käsitelty rakenne kuvaa vain sitä, mitä toiminnon lähdekoodissa voidaan tehdä. Internetissä on monia oppaita, joita voidaan käyttää VBA: n oppimiseen.
Julkisen tehtävän kurssin tulos (kokonaislukuarvona) merkkijonona
Jos arvo> = 5 Sitten
Kurssin tulokset = "Hyväksytty"
Muu
Kurssin tulokset = "Hylätty"
Loppu Jos
Lopeta toiminto
Huomaa If -koodilohkon elementit:
JOS ehto Silloin koodi MUU koodi LOPETA JOS
Julkinen toiminto BilPrima (arvo As Integer) Boolen muodossa
Dim i Kuten kokonaisluku
i = 2
BilPrima = Totta
Tehdä
Jos arvo / i = Int (arvo / i) Sitten
BilPrima = Väärä
Loppu Jos
i = i + 1
Silmukka Vaikka i <arvo Ja NumberPrima = Tosi
Lopeta toiminto
Katso elementit uudelleen:
DO code LOOP WHILE/UNTIL
Julkinen toiminto Factorial (arvo kokonaislukuna) niin kauan
Himmeät tulokset niin kauan
Dim i Kuten kokonaisluku
Jos arvo = 0 Sitten
tulos = 1
ElseIf arvo = 1 Sitten
tulos = 1
Muu
tulos = 1
Sillä i = 1 Arvo
tulos = tulos * i
Seuraava
Loppu Jos
Factorial = tulos
Lopeta toiminto
Katso elementit uudelleen:
FOR muuttuja = alaraja TO koodin SEURAAVA yläraja
. Huomaa myös If -lauseen ElseIf -lisäelementti, jonka avulla voit lisätä suoritettavalle koodille lisää vaihtoehtoja. Harkitse lopuksi "tulos" -funktiota ja muuttujaa, jotka on ilmoitettu pitkäksi. Pitkä tietotyyppi sallii paljon suurempia arvoja kuin kokonaisluku.
Alla on toiminnon koodi, joka muuntaa pienet luvut sanoiksi.
Vaihe 6. Palaa työkirjaan ja käytä toimintoa kirjoittamalla symboli (=) ja sen jälkeen solun funktion nimi
Kirjoita alkusulkeet (“(“) funktion nimen perään käyttämällä merkkiä kooma parametrien erottamiseksi ja lopeta sulkeilla (“)”). Esimerkiksi:
= NumberToLetter (A4)
. Voit myös käyttää kotitekoisia kaavoja etsimällä niitä luokista Käyttäjän määrittelemä Lisää kaava -vaihtoehdon sisällä. Napsautat vain painiketta Fx kaavapalkin vasemmalla puolella. Funktioissa on kolmen tyyppisiä parametrimuotoja: