VBA Max-funksjon - Hvordan finner du maksimalt ved bruk av maks i Excel VBA?

Innholdsfortegnelse

Max, som navnet antyder, brukes til å finne ut maksimumsverdien fra et gitt datasett eller en matrise, dette er en regnearkfunksjon, så den brukes med regnearkmetoden som regnearkfunksjon, det er en begrensning på denne metoden, da denne funksjon tar en matrise som et argument, det kan bare være 30 verdier i matrisen.

Excel VBA Max-funksjon

Vi har flere numeriske funksjoner i excel. Vi kan telle numeriske verdier i området, vi kan summere, og vi kan finne minimumsverdien samt maksimumsverdien for partiet. For å finne den maksimale verdien av partiet, har vi en excel-funksjon kalt MAX, som vil returnere maksimumsverdien for det medfølgende tallområdet. I VBA har vi ingen innebygd funksjon kalt “MAX” for å få maksimalt antall. Vi vil se hvordan du bruker denne Excel VBA Max-funksjonen.

Eksempel på maksfunksjon i Excel VBA

Dessverre har vi ikke den luksusen å bruke MAX som den innebygde VBA-funksjonen, men vi har tilgang til denne funksjonen som en del av klassen Arbeidsarkfunksjon.

Nå, se på koden nedenfor.

Kode:

Sub MAX_Example1 () Dim a Som Integer Dim b Som Integer Dim c Som Integer Dim Result Som Integer a = 50 b = 25 c = 60 Resultat = WorksheetFunction.Max (a, b, c) MsgBox Result End Sub

I eksemplet ovenfor har jeg erklært tre variabler for å lagre nummeret.

Dim a As Integer  Dim b As Integer  Dim c As Integer

Jeg har erklært en variabel til for å vise resultatene.

Dimmt resultat som heltall.

For de tre første tre variablene har jeg tildelt verdien henholdsvis 50, 25 og 60.

a = 50  b = 25  c = 60

I neste linje har jeg brukt MAX som en VBA-regnearkfunksjonsklasse for å lagre resultatet til variabelen "Resultat."

Resultat = WorksheetFunction.Max (a, b, c)

Så til slutt viser jeg verdien i meldingsboksen i VBA. MsgBox-resultat

Nå vil jeg kjøre denne koden ved hjelp av F5 eller manuelt og se hva resultatet er i meldingsboksen.

Så resultatet er 60.

Fra alle de medfølgende tallene, dvs. 50, 25 og 60, er det maksimale antallet 60.

Avansert eksempel på maks i Excel VBA

Sløyfer er veldig viktige i VBA for å løpe gjennom alle cellene og komme til resultatet. Vi vil se hvordan du kombinerer VBA MAX med løkker for å komme til maksimumsverdien fra listen over tall.

Jeg har en liste over varer og deres månedlige salgsytelse for disse varene, som vist nedenfor.

Nå for hver vare vil jeg vite hva det maksimale salgstallet er over 4 måneder, som vist på bildet.

Ved å bruke MAX for å utmerke oss, kan vi finne dette på få sekunder.

Nå vil vi se hvordan du finner den maksimale verdien ved å bruke VBA-kode.

Koden nedenfor vil utføre oppgaven med å finne maksimalt antall for hvert element.

Kode:

Sub MAX_Example2 () Dim k as Integer For k = 2 til 9 celler (k, 7) .Value = WorksheetFunction.Max (Range ("A" & k & ":" & "E" & k)) Neste k End Sub

Dette vil enkelt identifisere maksimalt antall.

Kjør nå koden manuelt eller trykk på F5-tasten og se resultatet som vist nedenfor.

For å få maksimumsverdiene månedens navn, bruk koden nedenfor.

Kode:

Sub MAX_Example2 () Dim k as Integer For k = 2 til 9 celler (k, 7) .Value = WorksheetFunction.Max (Range ("B" & k & ":" & "E" & k)) Cells (k, 8) .Value = WorksheetFunction.Index (Range ("B1: E1"), WorksheetFunction.Match _ (Cells (k, 7) .Value, Range ("B" & k & ":" & "E" & k) )) Neste k End Sub

Basert på verdien gitt av VBA max-funksjonen, vil INDEX-funksjonen & MATCH-funksjonen returnere den tilknyttede måneden i neste linje.

Ting å huske

  • Hvis duplikatnummeret deres er der, vil det bare vise ett nummer som kommer først.
  • Dette er den motsatte formelen for MIN-funksjonen i excel.
  • MAX er ikke en VBA-funksjon. Det er en innebygd funksjon i Excel, så bruk regnearkets funksjonsklasse.

Du kan laste ned denne Excel-malen her - VBA Max Function Template.

Interessante artikler...