1
Creați un registru de lucru nou sau deschideți registrul de lucru unde doriți să utilizați noua funcție creată de utilizator (FDU).
2
Deschideți Editorul Visual Basic care este construit în Microsoft Excel, accesând Tools-> Macro-> Visual Basic Editor (sau prin apăsarea Alt + F11).
3
Adăugați un nou modul în registrul de lucru făcând clic pe butonul indicat. Puteți crea funcția definită de utilizator în foaia de lucru fără a adăuga un modul nou, dar acest lucru vă va împiedica să îl utilizați în alte foi de lucru din același registru de lucru.
4
Creați "antetul" sau "prototipul" funcției. Acesta trebuie să aibă următoarea structură: funcția publică TheNameOfYourFunction (param1 Ca type1, param2 As type2) As returnType Pot exista cât mai mulți parametri doriți și tipul lor poate fi oricare dintre tipurile de date de bază sau tipuri de obiecte Excel, cum ar fi Range. Vă puteți gândi la parametri ca fiind "operanzii" asupra cărora va acționa funcția dvs. De exemplu, când spuneți SIN (45) pentru a calcula sinusul de 45 de grade, 45 va fi luat ca parametru. Apoi, codul funcției va utiliza această valoare pentru a efectua un anumit calcul și pentru a afișa rezultatul.
5
Adăugați codul funcției, asigurându-vă că: 1) folosiți valorile furnizate de parametri - 2) atribuiți rezultatului numele funcției - și 3) închideți funcția cu "funcția de capăt". Învățarea de a programa în VBA sau în orice altă limbă poate dura ceva timp și necesită un tutorial detaliat . Cu toate acestea, funcțiile au în general blocuri de coduri mici și utilizează câteva caracteristici ale unei limbi. Elementele cele mai utile ale limbii VBA sunt:
- Blocul dacă, care vă permite să executați o porțiune a codului numai dacă o condiție este îndeplinită. De exemplu:
Funcția publică a cursuluiResult (grila ca întreg) ca șir
Dacă gradul> = 5 Apoi
CourseResult = "Aprobat"
altfel
CourseResult = "Respins"
Sfârșit Dacă
Terminați funcția
Observați elementele dintr-un bloc de coduri dacă: Dacã condiția IF THEN codul codul ELSE END IF
. Cuvântul cheie altfel împreună cu a doua parte a codului sunt opționale. - Blocul de, care execută o parte a codului în timp ce (în timp) sau până (până) este îndeplinită o condiție. De exemplu:
Funcția publică IsPrime (valoare ca întreg) Ca boolean
Dim i ca intreg
i = 2
IsPrime = Adevărat
de
Dacă valoarea / i = Int (valoare / i) Apoi
IsPrime = False
Sfârșit Dacă
i = i + 1
Buclă În timp ce i < value And IsPrime = True
Terminați funcția
Rețineți elementele din nou: Faceți cod LOOP WHILE / UNTIL
. Rețineți, de asemenea, a doua linie în care o variabilă este "declarată". Puteți adăuga variabile în codul dvs., astfel încât să le puteți utiliza mai târziu. Variabilele funcționează ca valori temporare în cadrul codului. În cele din urmă, rețineți afirmația funcției BOOLEAN, care este un tip de date care permite numai valorile TRUE și FALSE. Această metodă pentru a determina dacă un număr este prime nu este ideal, dar am preferat să îl las să facă codul mai ușor de citit. - Blocul pentru, care execută o parte din cod un număr specificat de ori. De exemplu:
Funcția publică funcțională (valoare ca întreg) cât de lungă
Dim rezultatul este lung
Dim i ca intreg
Dacă valoarea = 0 Apoi
rezultat = 1
Valoare ElseIf = 1 Apoi
rezultat = 1
altfel
rezultat = 1
Pentru i = 1 Pentru valoare
rezultat = rezultat * i
următor
Sfârșit Dacă
Factorial = rezultat
Terminați funcția
Rețineți elementele din nou:FOR variable = limită inferioară la codul limită superioară NEXT
. Rețineți, de asemenea, elementul elseif adăugat în instrucțiune dacă, care vă permite să adăugați mai multe opțiuni la codul care urmează să fie executat. În cele din urmă, rețineți declarația funcției și variabila "rezultat" ca lung. Tipul de date lung permite valori mult mai mari decât "Integer".
Aici este codul pentru o funcție care convertește numerele în cuvinte.
6
Du-te înapoi la agenda ta și utilizați funcția pornind conținutul unei celule cu un egal urmată de numele rolului dvs. Adăugați la numele funcției o paranteză de deschidere, parametrii separați de
virgulă și o paranteză finală de închidere. De exemplu:
= Numarul de litere (A4) De asemenea, puteți utiliza formula definită de utilizator, căutând-o în categorie
Definit de utilizator din expertul pentru a introduce formula. Doar faceți clic pe buton
fx situat în partea stângă a barei de formulare.Parametrii pot fi de trei tipuri:
- Valori constante introduse direct în formula de celule. În acest caz, trebuie să fie incluse în ghilimele.
- Referințele celulelor ca B6 sau intervale ca A1: C3 (parametrul trebuie să fie de tip Interval ")
- Alte funcții aranjate în cadrul funcției sale (funcția sa poate fi, de asemenea, grupată în cadrul altor funcții). Aceasta este: = Factorial (MAX (D6: D8))
7
Verificați dacă rezultatul este OK după ce utilizați funcția de mai multe ori, asigurați-vă că gestionează diferite valori ale parametrilor corect: