/ / Vidutinė vartotojo funkcija Excel VBA

Tinkintos vidinės funkcijos Excel VBA

Žemiau apžvelgsime programą Excel VBA kuri sukuria Vartotojo apibrėžta funkcija kuris apskaičiuoja vidurkis atsitiktinai pasirinkto diapazono, išskyrus vieną ar kelias reikšmes, kurios yra neatitinkančios ir neturėtų būti vidutinės.

Padėtis:

Tinkintos vidinės funkcijos Excel VBA

Vartotojo nustatytos funkcijos turi būti dedamos į modulį.

1. Atidarykite Visual Basic Editor ir spustelėkite Insert, Module.

2. Įtraukite šią kodo eilutę:

Function CUSTOMAVERAGE(rng As Range, lower As Integer, upper As Integer)

Mūsų funkcijos pavadinimas yra "CUSTOMAVAVAGE". Skirtumai tarp skliaustų reiškia, kad mes suteikiame Excel VBA diapazoną ir du integer kintamuosius. Mes pavadiname savo diapazono rng, vieną kintamąjį "sveikasis", kurį mes vadiname žemesne, ir vieną kintamąjį "integer", kurį mes vadiname viršutine, bet jūs galite naudoti bet kokius pavadinimus.

3. Toliau deklaruojame "Range" objektą ir du kintamuosius tipo "integer". Mes vadiname Range objekto ląstelę. Vienas integruotas kintamasis, kurį mes vadiname "total" ir vienas kintamasis sveikasis, kurį vadiname skaičiu.

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

4. Mes norime patikrinti kiekvieną langelį atsitiktinai pasirinktame diapazone (šis diapazonas gali būti bet kokio dydžio). "Excel VBA" galite naudoti "Už kiekvieną kitą kilpą". Įtraukite šias kodo eilutes:

For Each cell In rng

Next cell

Pastaba: čia atsitiktine tvarka pasirenkami rng ir ląstelės, galite naudoti bet kokius pavadinimus. Nepamirškite nurodyti šių pavadinimų likusioje jūsų kodo dalyje.

5. Tada mes patikrinsime kiekvieną šio diapazono vertę, jei ji bus tarp dviejų reikšmių (žemesnė ir viršutinė). Jei tiesa, mes didiname bendrą ląstelės vertę, o mes padidiname skaičių iki 1. Pridėkite šias kodo eilutes prie ciklo.

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

6. Norėdami grąžinti šios funkcijos rezultatą (norimą vidurkį), pridėti šią kodo liniją už kilpos.

CUSTOMAVERAGE = total / count

7. Negalima pamiršti nutraukti funkcijos. Pridėti eilutę:

End Function

8. Dabar galite naudoti šią funkciją kaip ir bet kuri kita "Excel" funkcija, norėdami apskaičiuoti skaičių vidurkį tarp dviejų verčių.

Rezultatas:

Individualus vidutinis funkcijos rezultatas

Kaip čekį galite ištrinti visas reikšmes, kurios yramažesnis nei 10 ir didesnis nei 30 ir naudoja "Standard" vidurkio funkciją "Excel", norėdami pamatyti, ar "Excel" apskaičiuoja tą patį vidurkį kaip ir mūsų įprastą vidutinę funkciją.

Pasirenkamas vidutinis funkcijų patikrinimas

Mūsų įprasta vidutinė funkcija veikia! Pastaba: ši funkcija yra prieinama tik šioje knygoje.

Taip pat perskaitykite: