/ / Funcția de mediu personalizat în Excel VBA

Funcția medie obișnuită în Excel VBA

Mai jos ne vom uita la un program în Excel VBA care creează o Funcția definită de utilizator care calculează in medie dintr-o gamă selectată aleatoriu, cu excepția uneia sau mai multor valori care sunt valori extreme și nu ar trebui să fie medii.

Situatie:

Funcția medie obișnuită î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 CUSTOMAVERAGE(rng As Range, lower As Integer, upper As Integer)

Numele funcției noastre este CUSTOMAVERAGE. Partea dintre paranteze înseamnă că oferim Excel VBA o gamă și două variabile întregi ca intrare. Ne numim rng gama noastră, o variabilă Integer pe care o numim mai mică și o variabilă Integer numită superioară, dar puteți folosi orice nume.

3. Apoi declarăm un obiect Range și două variabile de tip Integer. Numim celula obiectului Range. O variabilă Integer pe care o numim totală și o variabilă Integer numită numărătoare.

Dim cell As Range, total As Integer, count As Integer

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ă: rng și celula sunt alese aleatoriu aici, puteți utiliza orice nume. Nu uitați să vă referiți la aceste nume în restul codului.

5. Apoi, verificăm pentru fiecare valoare din acest interval dacă se situează între cele două valori (inferior și superior). Dacă este adevărat, vom crește totalul cu valoarea celulei și vom crește numărul cu 1. Adăugați următoarele linii de cod la bucla.

If cell.Value >= lower And cell.Value <= upper Then
    total = total + cell.Value
    count = count + 1
End If

6. Pentru a returna rezultatul acestei funcții (media dorită), adăugați următoarea linie de cod în afara buclă.

CUSTOMAVERAGE = total / count

7. Nu uitați să terminați funcția. Adăugați linia:

End Function

8. Acum puteți utiliza această funcție ca orice altă funcție Excel pentru a calcula media numărului care se încadrează între două valori.

Rezultat:

Rezultatul funcției medii personalizate

Ca o verificare, puteți șterge toate valorile care suntmai mic de 10 și mai mare de 30 și utilizați funcția standard medie în Excel pentru a vedea dacă Excel calculează aceeași medie ca și funcția noastră medie obișnuită.

Verificarea funcției medii personalizate

Funcția noastră personalizată medie funcționează! Notă: această funcție este disponibilă numai în acest registru de lucru.

De asemenea, citiți: