Hoe om `n gebruiker-gedefinieerde funksie in Microsoft Excel te skep
Alhoewel Excel baie, miskien honderde, van geïntegreerde funksies, soos SUMAR, VLOOKUP, LINKS, insluit, het jy, wanneer jy dit begin gebruik om meer ingewikkelde take uit te voer, ontdek dat jy `n funksie nodig het wat nie bestaan nie. Moenie bekommerd wees nie, jy is nie heeltemal verlore nie, al wat jy moet doen, is om daardie funksie self te skep.
conținut
stappe
1
Skep `n nuwe boek of maak een oop waarin u die gebruiker-gedefinieerde funksie wil gebruik (ook bekend as "UDF", met sy akroniem in Engels) nuutgeskepte.
2
Open die Visual Basic Editor, wat in Microsoft Excel geleë is deur na Tools te gaan > makro > Visual Basic Editor (of deur Alt + F11 te druk).
3
Voeg `n nuwe module in die boek deur op die knoppie te klik. U kan die gebruiker-gedefinieerde funksie in dieselfde spreiblad skep sonder dat u `n nuwe module moet byvoeg, maar u kan dit nie in ander velle binne dieselfde boek gebruik nie.
4
Skep die uitgangspunt van die funksie. Dit moet die volgende struktuur hê:
funksie: "Naam van die funksie" (param1 As type1, param2 As tipe2) As Tipe opgawe.Dit kan die aantal parameters wat jy wil hê, en die tipe daarvan kan enige van die basiese Excel-tipes of objek tipes wees, soos "rang". Stel jou voor dat die parameters die "operande" waarmee jou funksie sal werk. Byvoorbeeld, as jy SEN (45) sê om die sinus van 45 grade te bereken, sal die getal as `n parameter geneem word. Daarom sal die kode van u funksie daardie waarde gebruik om iets anders te bereken en die resultaat aan te bied.
funksie: "Naam van die funksie" (param1 As type1, param2 As tipe2) As Tipe opgawe.Dit kan die aantal parameters wat jy wil hê, en die tipe daarvan kan enige van die basiese Excel-tipes of objek tipes wees, soos "rang". Stel jou voor dat die parameters die "operande" waarmee jou funksie sal werk. Byvoorbeeld, as jy SEN (45) sê om die sinus van 45 grade te bereken, sal die getal as `n parameter geneem word. Daarom sal die kode van u funksie daardie waarde gebruik om iets anders te bereken en die resultaat aan te bied.
5
Voeg die funksie kode by om seker te maak 1) Gebruik die waardes wat deur die parameters verskaf word. 2) Gee die resultaat aan die naam van die funksie en 3) Sluit die funksie met die frase "Einde funksie". Om te leer om in VBA of in enige ander programmeertaal te program, kan `n bietjie tyd neem en vereis `n gedetailleerde handleiding. Funksies het egter gewoonlik klein kodeblokke en gebruik baie min eienskappe van `n programmeertaal. Die bruikbaarste elemente van die VBA-taal is:
Funksie Kursusresultaat (As Geheelgraad) As String
As graad >= 5 dan
Resultaat = "goedgekeur"
anders
Resultaat = "verwerp"
Einde As
Einde Funksie
Kyk na die elemente in `n blok kode As:
Indien voorwaarde, dan kode ELKE kode EIND INDIEN
. Die navraag Anders (andersins) saam met die tweede deel van die kode is opsioneel.Funksie EsPrimo (waarde as integer) as Boolean
Dim ek as geheel
i = 2
IsPrime = True
doen
As waarde / i = Int (waarde / i) Dan
EsPrimo = Onwaar
Einde As
i = i + 1
Loop terwyl ek Einde Funksie
Kyk weer na die elemente:
OD-kode LOOP WHILE / UNTIL voorwaarde
. Let ook op die tweede lyn waarin "dit word verklaar" een veranderlike. U kan veranderlikes by die kode voeg, sodat u dit later kan gebruik. Die veranderlikes dien as tydelike waardes binne die kode. Laastens, let op die verklaring van die funksie as BOOLEAN, wat `n tipe data is wat slegs die waardes WAAR (waar) en ONWAAR (onwaar) toelaat. Hierdie metode om te bepaal of `n nommer prima is, is nie baie optimaal nie, maar dit is so verlaat om die kode makliker te lees.Funksiefaktoriese (waarde as integer) so lank
Dim resultaat so lank
Dim ek as geheel
As waarde = 0 dan
resultaat = 1
ElseIf waarde = 1 Dan
resultaat = 1
anders
resultaat = 1
Vir i = 1 Om te waardeer
resultaat = resultaat * i
volgende
Einde As
Faktoriese = resultaat
Einde Funksie
Kyk weer na die elemente:
VIR veranderlike = ondergrens na boonste limietkode NEXT
. Let ook op die bygevoegde element ElseIf in die verklaring As, wat dit moontlik maak om meer opsies by te voeg tot die kode wat uitgevoer sal word. Laastens, kyk na die verklaring van die funksie en die veranderlike "gevolg" as Lank. Die tipe data Lang laat veel hoër waardes toe as Integer.Die kode vir `n funksie wat klein getalle na woorde omskakel, word hieronder getoon.
6
Gaan terug na die boek en gebruik die funksie wat begin met die inhoud van `n sel met `n teken gelyk (=) gevolg deur die naam van jou funksie. Na die naam van die funksie, heg `n openingsharing, die parameters geskei met kommas en `n sluitingshakies. Byvoorbeeld:
= Getal Toetreders (A4)
U kan ook die formule wat deur die gebruiker gedefinieer is, gebruik in die kategorie Funksies gedefinieer deur die gebruiker in die formule assistent "voeg". Klik op die knoppie fx aan die linkerkant van die formulebalk geleë. Die parameters kan van drie tipes wees:
= Getal Toetreders (A4)
U kan ook die formule wat deur die gebruiker gedefinieer is, gebruik in die kategorie Funksies gedefinieer deur die gebruiker in die formule assistent "voeg". Klik op die knoppie fx aan die linkerkant van die formulebalk geleë. Die parameters kan van drie tipes wees:
7
Verifieer dat die waarde korrek is nadat u die funksie verskeie kere gebruik het om seker te maak dat dit op die korrekte manier verskillende parameterwaardes hanteer.
wenke
- Elke keer as jy `n blok kode skryf binne `n beheerstruktuur soos "As", "vir", "doen", onder andere, maak seker dat jy `n inskripsie na die blok kode laat, en laat `n paar leë spasies of tabelle (die styl van die inspringing hang af van jou). Dit sal jou kode makliker verstaan, en dit sal ook baie makliker wees om foute op te spoor en verbeteringe te maak.
- Excel het baie geïntegreerde funksies en die meeste berekeninge kan onafhanklik of in kombinasie met ander gedoen word. Maak seker dat jy die lys beskikbare funksies nagaan voordat jy begin om jou eie te maak. Uitvoering van berekeninge kan vinniger wees as u die ingeboude funksies gebruik.
- Gebruik `n naam wat nie gedefinieer word as die naam van `n funksie in Excel nie, maar jy kan net een van hulle gebruik.
- Soms kan `n funksie nie alle parameters vereis om `n resultaat te bereken nie. In daardie geval kan jy die navraag gebruik Opsioneel voor die naam van die parameter in die funksieopskrif. U kan die funksie gebruik IsMissing (name_of_parameter) binne die kode om vas te stel of die parameter toegeken is of nie vir `n waarde is nie.
- As jy nie weet hoe om die kode vir `n funksie te skryf nie, lees die artikel "Hoe om `n makro in Excel te skep".
waarskuwings
- As gevolg van sekuriteitsmaatreëls kan sommige mense makro`s deaktiveer. Maak seker dat jy jou kollegas vertel dat die boek wat jy stuur, makro`s het en dat hulle kan vertrou dat hulle nie hul rekenaars sal beskadig nie.
- Die funksies wat in hierdie artikel gebruik word, is op geen manier die enigste manier om die verwante probleme op te los nie. Hulle is slegs in die hede gebruik om die gebruik van die beheermaatreëls van die programmeertaal te verduidelik.
- Die VBA, soos met enige ander programmeertaal, het ook verskillende beheerstrukture "doen", "As" en "vir". Hierdie is slegs in hierdie artikel verduidelik om die soort dinge wat binne die bronkode van die funksie gedoen kan word, te verduidelik. Daar is baie tutoriale beskikbaar op die internet waar jy VBA kan leer.
Deel op sosiale netwerke:
Verwante
- Hoe om hiperskakels in Microsoft Excel in te voeg
- Hoe om `n timer in Visual Basic by te voeg
- Hoe om `n kolom in `n spiltafel by te voeg
- Hoe om Microsoft Visual Basic te leer
- Hoe om verslae in Excel te outomatiseer
- Hoe om die gemiddelde en standaardafwyking met Excel 2007 te bereken
- Hoe om `n eenvoudige sakrekenaar in Visual Basic 6.0 te skep
- Hoe om `n makro in Excel te skep
- Hoe om op te hou om `n Excel-werkboek te deel
- Hoe om `n regressie-analise in Excel uit te voer
- Hoe om `n wagwoord in Excel 2007 te stel
- Hoe om `n funksie te noem in Visual Basic
- Hoe om die interne opbrengskoers (IRR) in Excel te bereken
- Hoe om VBA-kodes te beskerm
- Hoe om twee nommers in Visual Basic.Net by te voeg
- Hoe om die Microsoft Excel Add funksie te gebruik
- Hoe om die soekopsie in Excel te gebruik
- Hoe om Makros in Excel te gebruik
- Hoe om die IF-funksie in sigblaaie te gebruik
- Hoe om `n rente betaling te bereken met behulp van Microsoft Excel
- Hoe om `n Excel-deskundige te word