Edhe pse Excel tashmë ka qindra funksione të integruara si SUM, VLOOKUP, LEFT, dhe kështu me radhë, funksionet e disponueshme të integruara zakonisht nuk janë të mjaftueshme për të kryer detyra mjaft komplekse. Sidoqoftë, mos u shqetësoni sepse ju duhet vetëm të krijoni vetë funksionet e kërkuara.
Hapi
Hapi 1. Krijoni një libër të ri pune ose hapni librin e punës që dëshironi të përpunoni me Funksionet e Përcaktuara nga Përdoruesi (UDF)
Hapi 2. Hapni redaktorin Visual Basic në Microsoft Excel përmes Tools-> Macro-> Editor Visual Basic (ose shtypni shkurtoren Alt+F11)
Hapi 3. Klikoni butonin Modul për të shtuar një modul të ri në fletën tuaj të punës
Mund të krijoni një UDF në një libër pune pa shtuar një modul të ri, por funksioni nuk do të funksionojë në fletët e tjera të punës në të njëjtën libër pune.
Hapi 4. Krijoni "kokën" ose "prototipin" e funksionit tuaj
Prototipi i funksionit duhet të ndjekë strukturën e mëposhtme:
funksioni publik "Emri i funksionit" (parametri1 Si tip1, parametri2 Si tip2) Si tip Rezultati.
Prototipet mund të kenë sa më shumë funksione, dhe llojet e tyre mund të jenë të gjitha llojet bazë të të dhënave ose llojet e objekteve Excel në formën e Range. Ju mund të mendoni për parametrat si "operantë" (operatorë) mbi të cilët funksioni do të veprojë. Për shembull, kur shkruani SIN (45) për të llogaritur sinusin prej 45 gradë, numri 45 do të merret si parametër. Pastaj, kodi i funksionit do t'i përdorë ato vlera për të kryer llogaritjet dhe për të shfaqur rezultatet.
Hapi 5. Shtoni kodin e funksionit për të siguruar që ju: 1) përdorni vlerën e dhënë nga parametri; 2) kaloni rezultatin në emrin e funksionit; dhe 3) mbyll funksionin me fjalinë "funksioni përfundimtar". Mësimi për të programuar në VBA ose në ndonjë gjuhë tjetër kërkon shumë kohë dhe udhëzime të hollësishme. Për fat të mirë, këto funksione zakonisht kanë blloqe të vogla kodesh dhe nuk përdorin shumë veçoritë e gjuhës programuese. Këtu janë disa elementë të gjuhës VBA që mund të përdoren:
- Blloku If (nëse), i cili ju lejon të ekzekutoni një pjesë të kodit vetëm nëse plotësohet kushti. Si nje shembull:
- Me Ju mund të lini jashtë fjalën kyçe Tjetër së bashku me pjesën e dytë të kodit pasi është opsionale.
- Blloku Bëni (bëni), i cili ekzekuton një pjesë të kodit Ndërsa ose Deri kur ose derisa të plotësohet kushti. Si nje shembull:
- Me Gjithashtu vini re rreshtin e dytë i cili "deklaron" ndryshoren. Ju mund të shtoni ndryshore në kodin tuaj për përdorim të mëvonshëm. Variablat veprojnë si vlera të përkohshme në kod. Së fundi, konsideroni deklaratën e funksionit si BOOLEAN, i cili është një lloj i të dhënave që lejon vetëm vlera TRUE ose FALSE. Kjo metodë e përcaktimit të numrave të thjeshtë nuk është aspak optimale, por kodi është shkruar në atë mënyrë që të lexohet lehtë.
- Për bllok (tek), e cila ekzekuton një sasi të caktuar të kodit. Si nje shembull:
- Një vlerë konstante që futet drejtpërdrejt në formulën e qelizës. Në këtë rast, teksti (vargu) duhet të citohet.
- Referencat e qelizave, për shembull B6 ose varg si A1: C3 (parametri duhet të jetë lloji i të dhënave "Gama")
-
Një funksion tjetër që është i mbyllur në funksionin tuaj (funksioni juaj mund të përfshihet edhe në një funksion tjetër), për shembull: = Factorial (MAX (D6: D8))
Hapi 7. Sigurohuni që rezultatet të jenë të sakta
Përdoreni atë disa herë për t'u siguruar që funksioni është në gjendje të trajtojë saktë vlerat e ndryshme të parametrave:
Këshilla
- Kur shkruani blloqe kodesh në strukturat e kontrollit të tilla si If, For, Do, etj., Sigurohuni që të futni (vendosni kufirin e vijës së majtë pak brenda) bllokut të kodit duke shtypur disa herë hapësirën, ose skedën. Kjo do ta bëjë kodin më të lehtë për tu kuptuar dhe gabimet do të jenë shumë më të lehta për tu gjetur. Për më tepër, rritja e funksionalitetit bëhet më e lehtë për tu bërë.
- Nëse nuk dini si të shkruani kod për funksionet, lexoni artikullin Si të shkruani një makro të thjeshtë në Microsoft Excel.
- Ndonjëherë, funksionet nuk kanë nevojë për të gjithë parametrat për të llogaritur rezultatin. Në këtë rast, mund të përdorni fjalen kyçe Opsionale para emrit të parametrit në titullin e funksionit. Ju mund të përdorni funksionin IsMissing (emri_parametër) në kodin tuaj për të përcaktuar nëse një parametri i është caktuar një vlerë apo jo.
- Përdorni emra të papërdorur si funksione në Excel në mënyrë që asnjë funksion të mos mbishkruhet dhe fshihet.
- Excel ka shumë funksione të integruara dhe shumica e llogaritjeve mund të kryhen duke përdorur këto funksione të integruara, individualisht ose të gjitha menjëherë. Sigurohuni që të hidhni një sy në listën e funksioneve në dispozicion para se të filloni të kodoni vetë. Ekzekutimi mund të bëhet më shpejt nëse përdorni funksione të integruara.
Paralajmërim
- Për arsye sigurie, shumë njerëz çaktivizojnë makrot. Sigurohuni që të njoftoni marrësit e librit tuaj të punës që libri i punës i paraqitur ka makro dhe se këto makro nuk do të dëmtojnë kompjuterët e tyre.
- Funksioni i përdorur në këtë artikull nuk është mënyra më e mirë për të zgjidhur problemin e lidhur. Shembulli përdoret për të shpjeguar përdorimin e strukturave të kontrollit të gjuhës.
- VBA, si gjuhët e tjera, ka disa struktura të tjera kontrolli përveç Do, If dhe For. Struktura e diskutuar këtu përshkruan vetëm atë që mund të bëhet në kodin burimor të funksionit. Ka shumë udhëzues në internet që mund të përdoren për t'ju ndihmuar të mësoni VBA.
Rezultati i Kursit të Funksionit Publik (Si vlerë e plotë) Si varg
Nëse vlera> = 5 Atëherë
Rezultatet e kursit = "Pranuar"
Tjetër
Rezultatet e kursit = "U refuzua"
Fundi Nëse
Funksioni i Fundit
Vini re elementet në bllokun e kodit If:
NFSE kushti PASTAJ kodi TJER code kodi FUND N ISE
Funksioni Publik BilPrima (vlera si numër i plotë) Si Boolean
Dim i Si numër i plotë
i = 2
BilPrima = E vërtetë
Bëj
Nëse vlera / i = Int (vlera / i) Atëherë
BilPrima = E pavërtetë
Fundi Nëse
i = i + 1
Loop Ndërsa i <vlera dhe numriPrima = E vërtetë
Funksioni i Fundit
Shikoni përsëri elementët:
BON code kodin LOOP GJITHLESI/DERI në gjendje
Funksioni Publik Factorial (vlera si numër i plotë) Sa kohë
Rezultatet e zbehta Sa më gjatë
Dim i Si numër i plotë
Nëse vlera = 0 Atëherë
rezultati = 1
TjetërNëse vlera = 1 Atëherë
rezultati = 1
Tjetër
rezultati = 1
Për i = 1 Për të vlerësuar
rezultat = rezultat * i
Tjetra
Fundi Nëse
Faktorial = rezultati
Funksioni i Fundit
Shikoni përsëri elementët:
P variableR ndryshore = kufiri i poshtëm KU kufiri i sipërm i kodit NEXT
Me Gjithashtu, vini re elementin shtesë ElseIf në deklaratën If, i cili ju lejon të shtoni më shumë opsione në kodin që po ekzekutohet. Së fundi, merrni parasysh funksionin "rezultat" dhe ndryshoren e deklaruar si Long. Lloji i të dhënave të gjata lejon vlera shumë më të mëdha se Integer.
Më poshtë është treguar kodi për një funksion që shndërron numrat e vegjël në fjalë.
Hapi 6. Kthehuni te libri i punës dhe përdorni funksionin duke shkruar simbolin "baras" (=) e ndjekur nga emri i funksionit në qelizë
Shkruani kllapat e hapjes ("(") pas emrit të funksionit, duke përdorur shenjën koma për të ndarë parametrat dhe përfundoni me kllapa mbyllëse (")"). Si nje shembull:
= NumberToLetter (A4)
Me Ju gjithashtu mund të përdorni formula shtëpiake duke i kërkuar ato në kategori Perdorues i percaktuar brenda opsionit Insert Formula. Thjesht klikoni butonin Fx në të majtë të shiritit të formulës. Ekzistojnë tre lloje të formave të parametrave në funksione: