(Mukautettujen) käyttäjän määrittämien toimintojen (UDF) luominen

Tässä opetusohjelmassa selitetään, miten voit luoda käyttäjän määrittämiä toimintoja VBA: ssa.

VBA koostuu alimenettelyistä ja toimintamenettelyistä. Toimintomenettelyt palauttavat arvon, ja ne voidaan kutsua alimenettelyillä tai niitä voidaan käyttää Excel -taulukossa, jossa funktion tuottama arvo palautetaan Excel -taulukkoon. Excelissä on tietysti joukko sisäänrakennettuja toimintoja, kuten Sum -funktio tai If -toiminto. VBA: ssa kirjoittamiasi toimintamenettelyjä käytetään samalla tavalla kuin sisäänrakennettua toimintoa, ja niitä kutsutaan käyttäjän määrittämiksi funktioiksi (UDF).

Miksi luoda UDF?

Vaadittu toiminto puuttuu

Yksi tärkeimmistä syistä UDF: n luomiseen Excelissä on se, että olemassa olevaa sisäänrakennettua toimintoa ei ole, joka hoitaa tehtävän puolestasi. Oman toiminnon kirjoittaminen VBA: ssa on yleensä tehokkain tapa ratkaista ongelma. Alla oleva toiminto muuntaa arvon kilogrammoista kiloiksi, jos muuttujan parametria (dblKilo) käytetään kilogrammojen arvon saamiseen laskemista varten.

Korvaa alirutiini (makro)

Voit kirjoittaa alimenettelyn (makron) ratkaistaksesi tehtävän puolestasi - mutta alimenettelyt eivät palauta arvoa eivätkä ne ole dynaamisia - toisin sanoen, jos laskentataulukon arvot muuttuvat, sinun on suoritettava makro, jotta makron laskelmat voivat päivittää tietosi. Alla oleva alimenettely muuntaa myös kilomme kiloiksi, mutta joka kerta, kun tiedot muuttuvat A1: ssä, sinun on suoritettava makro uudelleen päivittääksesi tuloksen.

Vaihda kaava

Sinulla voi olla Excelissä todella monimutkainen kaava, jota sinun on käytettävä toistuvasti - kaavan asettaminen VBA -koodiin helpottaa lukemista ja ymmärtämistä - sekä ehkä poistaa tilaa käyttäjävirheille kaavan kirjoittamisessa.

UDF -tiedostojen luominen

Luo UDF lisäämällä ensin moduuli joko Excel -työkirjaasi tai, jos sinulla on henkilökohtainen makro -työkirja, voit joko käyttää olemassa olevaa moduulia tai lisätä uuden. Tätä varten sinun on oltava Visual Basic Editorissa (VBE). Pääset VBE -laitteeseen painamalla ALT + F11 tai napsauta nauhan Kehittäjä -välilehden Visual Basic -vaihtoehtoa.

KÄRKI: Jos kehittäjä -välilehti ei ole käytössä valintanauhassa, siirry osoitteeseen Tiedosto, Asetukset ja napsauta Muokkaa nauhaa. Varmista, että Kehittäjä -valintaruutu on valittuna ja napsauta OK.

Jos haluat lisätä uuden moduulin, valitse VBA -projekti, johon haluat lisätä moduulin (joko nykyisen kirjan VBA -projekti tai henkilökohtainen makro -työkirja), napsauta Lisää Valikko ja napsauta Moduuli

Kun olet luonut moduulin, voit aloittaa UDF: n luomisen.

Kaikki UDF: t alkavat funktiolla ja sen jälkeen UDF: n nimellä. Toiminnot voivat olla yksityisiä tai julkisia, mutta yleensä haluat, että UDF on julkinen, jotta ne näkyvät Excelin Lisää toiminto -valintaikkunassa (katso toiminnon käyttäminen Excel -taulukon alla tässä artikkelissa). Jos et aseta yksityistä avainsanaa toiminnon eteen, toiminto on automaattisesti julkinen.

123 Toiminto TestFunction1 (intA As Integer) kokonaislukunaTestitoiminto1 = intA * 7Lopeta toiminto

Yllä olevalla funktiolla on yksi argumentti (intA). Voit luoda funktion, jossa on useita argumentteja

123 Toimintotesti Toiminto2 (intA kokonaislukuna, intB kokonaislukuna, intC kokonaislukuna) kokonaislukunaTestitoiminto2 = (intA * intB) + intCLopeta toiminto

Voit myös luoda funktion valinnaisilla argumentteilla. Jos argumentti jätetään pois, voit asettaa funktion argumentille oletusarvon.

123 Toimintotesti Toiminto3 (intA kokonaislukuna, intB kokonaislukuna, valinnainen intC kokonaislukuna = 10) kokonaislukunaTestitoiminto3 = (intA * intB) + intCLopeta toiminto

Toiminnon käyttäminen Excel -taulukosta

Luomasi toiminnot näkyvät oletusarvoisesti toimintoluettelossasi toimintoluettelon Käyttäjän määrittämässä osassa.

Klikkaa fx Lisää toiminto -valintaikkuna.

Valitse Käyttäjän määrittelemä kategorialuettelosta

Valitse haluamasi toiminto käytettävissä olevista Käyttäjän määrittämät toiminnot.

Vaihtoehtoisesti, kun aloitat funktion kirjoittamisen Exceliin, toiminnon pitäisi näkyä avattavassa toimintoluettelossa.

Toimintojen tallentaminen Excel -tiedoston kanssa

Koska toiminnot on kirjoitettu VBA -koodilla, on selvää, että koodin on oltava työkirjan käytettävissä, jotta sitä voidaan käyttää Excel -taulukossa. Voit joko tallentaa toiminnot työkirjaan, jossa käytät niitä, tai voit tallentaa ne henkilökohtaiseen makro -työkirjaasi. Henkilökohtainen makro -työkirjasi on piilotettu tiedosto, joka on käytettävissä aina, kun Excel on avoinna, ja siksi se on kaikkien Excel -työkirjojen käytettävissä. Se luodaan yleensä, kun tallennat makron ja valitset vaihtoehdon makron tallentamiseen henkilökohtaiseen makro -työkirjaan.

Jos haluat säilyttää toiminnot työkirjassa, jota käsittelet, sinun on varmistettava, että kun tallennat työkirjan, se tallennetaanMakro käytössä työkirja’Tai an xlsm tiedosto.

wave wave wave wave wave