/ / Funcția definită de utilizator în Excel VBA

Funcția definită de utilizator în Excel VBA

Mai jos ne vom uita la un program în Excel VBA care creează o Funcția definită de utilizator. Excel are o colecție vastă de funcții. În cele mai multe situații, aceste funcții sunt suficiente pentru a face treaba. Dacă nu, puteți să vă creați propria funcție denumită Funcție definită de utilizator sau funcția Excel personalizată. Puteți accesa o funcție definită de utilizator ca orice altă funcție Excel.

Vrem să creăm o funcție numită SUMEVENNUMBERS care găsește suma numerelor par a unui interval selectat aleator.

Situatie:

Funcția definită de utilizator în Excel VBA

Funcțiile definite de utilizator trebuie să fie plasate într-un modul.

1. Deschideți Editorul Visual Basic și faceți clic pe Insert, Module.

2. Adăugați următoarea linie de cod:

Function SUMEVENNUMBERS(rng As Range)

Numele funcției noastre este SUMEVENNUMBERS. Partea dintre brackets înseamnă că oferim Excel VBA o gamă de intrare. Ne numim rng gama noastră, dar puteți folosi orice nume.

3. Apoi declarăm un obiect Range și numim celulă.

Dim cell As Range

4. Vrem să verificăm fiecare celulă într-un interval aleator ales (acest interval poate fi de orice dimensiune). În Excel VBA, puteți folosi bucla For Each Next pentru aceasta. Adăugați următoarele linii de cod:

For Each cell In rng

Next cell

Notă: Celula este aleasă aleatoriu aici, puteți folosi orice nume.

5. Apoi, vom verifica pentru fiecare valoare din acest interval dacă este chiar sau nu. Folosim operatorul Mod pentru asta. Operatorul Mod dă restul unei diviziuni. Deci, 7 mod 2 ar da 1. 7 este împărțit de 2 (3 ori) pentru a da un rest de 1. După ce a spus acest lucru, este ușor să verificați dacă un număr este chiar sau nu. Numai dacă restul unui număr împărțit la 2 este 0, numărul este egal. 8 mod 2 dă 0, 8 este împărțit de 2 exact de 4 ori și, prin urmare, 8 este egal. Adăugați următoarea instrucțiune If la bucla For Each Next.

If cell.Value Mod 2 = 0 Then

End If

6. Doar dacă această afirmație este adevărată, adăugăm valoarea la SUMEVENNUMBERS. Adăugați următoarea linie de cod în instrucțiunea Dacă.

SUMEVENNUMBERS = SUMEVENNUMBERS + cell.Value

7. Nu uitați să terminați funcția (în afara bucla).

End Function

8. Acum puteți utiliza această funcție, ca orice altă funcție Excel, pentru a găsi suma numerelor par a unui interval selectat aleator.

Rezultat:

Definirea funcției definite de utilizator

Foarte bine! Asta este modul în care sunt ușor de utilizat funcțiile definite de utilizator în Excel VBA. Notă: această funcție este disponibilă numai în acest registru de lucru.

De asemenea, citiți: