/ / Tilpasset gjennomsnittsfunksjon i Excel VBA

Tilpasset gjennomsnittsfunksjon i Excel VBA

Nedenfor ser vi på et program i Excel VBA som skaper en Brukerdefinert funksjon som beregner gjennomsnitt av et tilfeldig valgt område, unntatt en eller flere verdier som ikke er avvikende, og bør ikke være gjennomsnittlig.

Situasjon:

Tilpasset gjennomsnittsfunksjon i Excel VBA

Brukerdefinerte funksjoner må plasseres i en modul.

1. Åpne Visual Basic Editor og klikk Insert Insert, Module.

2. Legg til følgende kodelinje:

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

Navnet på vår funksjon er Custom. Delen mellom parentesene betyr at vi gir Excel VBA en rekkevidde og to integervariabler som input. Vi heter vårt rng-område, en helhetsvariabel vi kaller lavere, og en helhetsvariabel vi kaller øvre, men du kan bruke noen navn.

3. Deretter erklærer vi et områdeobjekt og to variabler av typen Integer. Vi kaller Range-objektcellen. En helhetsvariabel vi kaller totalt og en helhetsvariabel vi kaller teller.

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

4. Vi vil sjekke hver celle i et tilfeldig valgt område (dette området kan være av en hvilken som helst størrelse). I Excel VBA kan du bruke For hver neste sløyfe for dette. Legg til følgende kodelinjer:

For Each cell In rng

Next cell

Merk: rng og celle er tilfeldig valgt her, du kan bruke noen navn. Husk å henvise til disse navnene i resten av koden din.

5. Deretter kontrollerer vi for hver verdi i dette området hvis det faller mellom de to verdiene (lavere og øvre). Hvis sant, øker vi totalt etter verdien av cellen, og vi øker med 1. Legg til følgende kodelinjer i sløyfen.

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

6. For å returnere resultatet av denne funksjonen (ønsket gjennomsnitt), legg til følgende kode linje utenfor løkken.

CUSTOMAVERAGE = total / count

7. Ikke glem å avslutte funksjonen. Legg til linjen:

End Function

8. Nå kan du bruke denne funksjonen akkurat som enhver annen Excel-funksjon for å beregne gjennomsnittet av tall som faller mellom to verdier.

Resultat:

Tilpasset gjennomsnittlig funksjonsresultat

Som en sjekk kan du slette alle verdier som erlavere enn 10 og høyere enn 30 og bruk standard gjennomsnittsfunksjonen i Excel for å se om Excel beregner det samme gjennomsnittet som vår tilpassede gjennomsnittlige funksjon.

Tilpasset gjennomsnittsfunksjonskontroll

Vår tilpassede gjennomsnittsfunksjon fungerer! Merk: Denne funksjonen er bare tilgjengelig i denne arbeidsboken.

Les også: